gpt4 book ai didi

javascript - js setTimeout 同步

转载 作者:行者123 更新时间:2023-11-28 11:37:58 25 4
gpt4 key购买 nike

事实上,当我使用时

setTimeout(a(),60);
setTimeout(a(),120);
setTimeout(a(),180);
setTimeout(a(),240);

函数调用之间的间隔应该是 60ms。

但事实并非如此,尤其是在页面加载或动画元素期间触发它时。事实上,当浏览器“有繁重的工作要做”时,这个差距甚至会延长两倍。在某些情况下,它很容易可见。

问题的关键是 - 有没有其他方法可以在 javascript 中及时同步事件或函数?

最佳答案

简单来说,setTimeout(a(),60) 中的计时转换为我将在不早于 60 毫秒的时间内运行此函数,但如果我很忙,则可能会晚于此.

因此,setTimeout 不 promise 何时执行,只是 promise 在给定时间(以毫秒为单位)之后的某个时间执行。

所以回答你的问题,没有办法用 setTimeout保证执行时间,但你可以在 DOM 加载后加载脚本,这样 JavaScript 就不会忙着加载其他东西。在 jQuery 中,您可以使用 $(document).ready() 函数来实现此目的。

阅读 John Resig 撰写的这篇文章,了解有关 JavaScript 计时的更多信息:http://ejohn.org/blog/how-javascript-timers-work/

关于javascript - js setTimeout 同步,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14096361/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com