几年前,我被警告不要使用setInterval很长一段时间,因为如果被叫函数的运行时间超过指定的时间间隔,它会导致浏览器挂起,然后就无法赶上:
setInterval( function(){
foo = 'bar_' + i++;
}, 1 );
Run Code Online (Sandbox Code Playgroud)
现在,我知道,在一个循环中添加大量的代码可能会导致浏览器挂起无论如何,这阻止这样的代码alert,prompt以及confirm将停止它的轨道的代码,但是有没有什么好的理由,以避免setInterval?
注意:我知道如何进行递归setTimeout调用(因为这是我一直在使用的),这个问题是我试图弄清楚它是否仍然值得使用它们,或者是否setInterval可以安全使用.