为什么是变量 a
值为2时,是否在2秒后进入循环?
let a = 1;
setVar()
function sleep(ms) {
return new Promise(resolve => setTimeout(resolve, ms));
}
async function setVar(){
await sleep(2000);
a = 2;
}
while(a === 1)
{}
console.log(a);
为什么是变量 a
值为2时,是否在2秒后进入循环?
let a = 1;
setVar()
function sleep(ms) {
return new Promise(resolve => setTimeout(resolve, ms));
}
async function setVar(){
await sleep(2000);
a = 2;
}
while(a === 1)
{}
console.log(a);
1条答案
按热度按时间vkc1a9a21#
您好,您的问题的答案在此帖子中:
js while(true){}阻塞事件循环
您的事件循环被您的
while
循环如此异步的动作,就像你在setVar
无法解决