clearInterval()最后一次间隔调用会发生什么

时间:2016-02-23 02:45:03

标签: javascript

var interval = setInterval(function()
                { function }, 1000);

 clearInterval(interval);

调用clearInterval时最后一次间隔调用会发生什么?如果间隔为1000(0.5秒)中的500,并且调用了clearInterval,是否会调用此函数,然后取消间隔?或者是否未调用函数并取消间隔?

由于

2 个答案:

答案 0 :(得分:2)

如果指定的时间间隔还没有结束,则不会再次调用回调。标准不清楚如果间隔已经过去但事件队列尚未处理回调将会发生什么,但是在下次调用之前剩余500毫秒的情况下,它绝对不应该&#39 ; t再次调用回调。

答案 1 :(得分:1)

您可以使用以下内容对其进行测试:

var counter = 0;

var interval = setInterval(function() { 
  console.log(counter); 
  counter++;
}, 2000);

setTimeout(function() {
  clearInterval(interval);
}, 5900);

=> 0
=> 1

如您所见,如果间隔中途中断,则不会执行回调。