gpt4 book ai didi

javascript - setTimeout 循环等待另一个 setTimeout 循环

转载 作者:行者123 更新时间:2023-11-28 03:16:56 27 4
gpt4 key购买 nike

我想在第一个函数完成后执行第二个函数。
结果:
   i: 0,i: 1,...,i: 9,
   j: 0,j: 1,...,j: 9

function first(callback){
for(let i = 0 ; i < 10;i++){
setTimeout(() => {
console.log('i: ',i);
},10*i);
}
setTimeout(() => {
callback();
},10*i);
}

function second(){
for(let j = 0 ; j < 10; j++){
setTimeout(() => {
console.log('j: ',j);
},10*j);
}
}

first(second());

最佳答案

first 中有 10 次迭代,因此 second 的回调应在 10 * 10 毫秒后运行。另请确保将second传递first中,而不是立即调用second:

function first(callback) {
for (let i = 0; i < 10; i++) {
setTimeout(() => {
console.log('i: ', i);
}, 10 * i);
}
setTimeout(callback, 10 * 10)
}

function second() {
for (let j = 0; j < 10; j++) {
setTimeout(() => {
console.log('j: ', j);
}, 10 * j);
}
}

first(second);

关于javascript - setTimeout 循环等待另一个 setTimeout 循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59547735/

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