setTimeout 和 setInterval 有什么区别,比如在 UI 进程中长时间运行函数的时候?
setTimeout(function(){
/* Some long block of code... */
}, 10);
setInterval(function(){
/* Some long block of code... */
}, 10);
如果执行时间较长,则执行时间大于 setTimeout 或 setInterval 设置时间
setTimeout 和 setInterval 有什么区别,比如在 UI 进程中长时间运行函数的时候?
setTimeout(function(){
/* Some long block of code... */
}, 10);
setInterval(function(){
/* Some long block of code... */
}, 10);
如果执行时间较长,则执行时间大于 setTimeout 或 setInterval 设置时间
setTimeout 运行一次,当您使用
setInterval 永远运行,直到您调用 clearInterval 取消。
因此,对于长时间运行的过程,最好使用 setTimeout 然后让您的 setTimeout 处理程序再次调用 setTimeout 以保持循环运行。
编辑 setInterval 的问题是,如果运行时间超过 10 毫秒(在您的情况下),则可以放弃下一个呼叫。
要回答您的另一个问题,除了已经提到的问题之外没有区别,两者都具有相同的优先级。