function aa () {
(async () => { for (let i = 0; i < 10; i++) { console.log(i, 'iiiii') await new Promise((resolve1, reject1) => { (async () => { for (let j = 0; j < 20; j++) { await new Promise((resolve, reject) => {
setTimeout(() => {
resolve()
}, 5000)
}) console.log(i, j)
}
resolve1()
})(this)
})
}
})(this)
}先执行aa()等五秒后再执行aa()上面的两个循环在点击的时候会执行,如果我点了5次,那么for除了执行最后点击一次循环,前面的4次如果没有完成,还是会执行。请问怎么跳过之前的循环不执行,直接执行最后一次?
1 回答
Smart猫小萌
TA贡献1911条经验 获得超7个赞
async function fn() { for (let i = 0; i < 10; i++) { for (let j = 0; j < 10; j++) { var res = await Promise.resolve('result') if (res) { break; } } } } fn()
添加回答
举报
0/150
提交
取消