gpt4 book ai didi

javascript - 如何在 For 循环中使用超时?

转载 作者:行者123 更新时间:2023-11-30 20:02:32 25 4
gpt4 key购买 nike

所以,我正在尝试使用创建一个循环来执行此操作:

setTimeout(function() {           
console.log("Hey!");

setTimeout(function() {
console.log("Hey!");

setTimeout(function() {
console.log("Hey!");

}, 1000);

}, 1000);

}, 1000);

所以,我就这样尝试了。

for (i = 0; 1 < 3; i++){
setTimeout(function() {
console.log("Hey!");
}, 1000);
}

然而,它不起作用。

做一些研究我注意到这是因为超时在每个循环中相互添加。我该如何解决这个问题?

最佳答案

你必须递归地调用超时,所以写一个函数接受当前尝试次数的参数。让它做一个操作,然后用 attempts 参数 += 1 调用自己。

您应该传递多次尝试作为安全措施,这样您就可以告诉函数不要在尝试次数大于某个限制时调用自身,以避免无限循环。

类似于:

timedLog(attempts) {
console.log('Hey!');
if (attempts > 10) {
return;
} else {
setTimeout(function() { timedLog(attempts + 1); }, 1000);
}
}

看起来不像是for循环了,但是原理是一样的。

关于javascript - 如何在 For 循环中使用超时?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53227172/

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