我在1秒后更改'aa‘的值,但是循环继续执行。
let aa = true;
setTimeout(function () {
aa = false;
}, 1000);
for (; aa; ) {
console.log('aaa');
}发布于 2021-12-11 09:47:37
setTimeout是异步,所以只有在for循环的当前代码执行完成之后才能执行。在你的情况下,它将是无限的。
一旦for循环开始执行,它将留在调用堆栈中直到完成。既然你没有给出任何条件,它就不会停止
https://stackoverflow.com/questions/70314053
复制相似问题