gpt4 book ai didi

javascript - 在 setInterval 超时之前回调函数未完成

转载 作者:行者123 更新时间:2023-12-01 17:15:28 25 4
gpt4 key购买 nike

如果在 setInterval 函数超时之前没有完成回调函数会是什么结果。
例如:

setInterval(function() {
// This block takes more than 5 seconds.
}, 4000);
现在 setInterval 的超时时间为 4 秒,而回调函数需要 5 秒才能完成。会发生什么,是等待函数完成还是在 4 秒后再次执行回调?

最佳答案

它将等待回调完成,因为 JavaScript 是单线程的。如果你运行下面的代码片段,你会看到 'done'每 5 秒打印一次。

setInterval(function() {
let curr = new Date;
while(new Date() - curr <= 5000);
console.log('done');
}, 4000);

关于javascript - 在 setInterval 超时之前回调函数未完成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63177836/

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