为什么window.setInterval
在不同的计算机上以不同的速度运行。这纯粹只是滞后还是其他东西?
所有计算机上的30毫秒都不应该是30毫秒吗?
答案 0 :(得分:1)
你忘了对于一些Javascript调用他们使用事件循环,所以虽然你说30ms你基本上说队列并在 30ms过后激活回调。
这意味着,如果队列中有很多花费时间,那么回调基本上需要更长时间才能到达。
显然,处理事件循环的速度变化很大。
这里有一篇很好的文章深入解释 - http://javascript.info/tutorial/events-and-timing-depth