javascript的setInterval函数

javascript的setInterval函数,javascript,html,Javascript,Html,在javascript中,我们使用如下setInterval函数 myInteval= setInterval("func",t); 如果“func”本身的执行时间大于间隔时间t怎么办 我认为js是单线程的。这是如何实现的???然后它将等待func完成执行,检查要按间隔运行的函数队列,然后再次运行 有关更多详细信息,请参阅。John Resig的这篇文章中的一些重要内容: …不保证计时器延迟 也就是说,您指定的t不一定要按原样兑现。它表示最短时间,而不是保证时间 再往下看: …间隔不关心当前

在javascript中,我们使用如下setInterval函数

myInteval= setInterval("func",t);
如果“func”本身的执行时间大于间隔时间t怎么办


我认为js是单线程的。这是如何实现的???

然后它将等待
func
完成执行,检查要按间隔运行的函数队列,然后再次运行


有关更多详细信息,请参阅。

John Resig的这篇文章中的一些重要内容:

…不保证计时器延迟

也就是说,您指定的
t
不一定要按原样兑现。它表示最短时间,而不是保证时间

再往下看:

…间隔不关心当前正在执行的操作,它们会 不分青红皂白地排队,即使这意味着 回调将被牺牲

因此,如果队列由于执行而累积,则
func
将有效地排队执行,而不会有任何
t
延迟

最后总结如下:

…如果间隔时间较长,则可以背对背执行,不会延迟 足够执行(比指定的延迟更长)


JS不是单个线程。您可以同时启动多个函数JavaScript中没有真正的线程。没有java脚本是单线程的。。。当我们执行js代码时,一次只能从一个线程执行。javascript是单线程的..在stackoverflow@murali上查看这篇文章,请阅读。浏览器会删除排队函数吗?因为它也有限制?如果删除它们,将首先删除哪个函数?