setInterval(function(){
run();}, 1000);function run(){ setTimeout(function(){ run(); }, 1000);
}run();我想问一下,在效果上,这两个方法完全一样,但是本质上区别在哪里呢?补充一下:我想问的是在线程中这两种实现方法有什么不同之处,或者说在队列中的区别。
1 回答
![?](http://img1.sycdn.imooc.com/54584ed2000152a202200220-100-100.jpg)
MMTTMM
TA贡献1869条经验 获得超4个赞
function run(){ // 其他代码 setTimeout(function(){ run(); }, 10000); }run();
以上面的代码来说, 虽然设置的是10s执行一次, 但是实际时间却是需要// 其他代码
的执行时间来确定
即setTimeout的间隔时间是, // 其他代码
执行时间 + 10s
setInterval(function(){ run();}, 10000);
而setInterval, 不会有上面的问题, 但是如果run()
的执行时间, 操作大于10s, 那么甚至可能跳过任务
添加回答
举报
0/150
提交
取消