setTimeout(() => { console.log('2');},5000);while (true) { console.log('1');}不是很理解。。。这个为什么会输出1。。而且还卡死了。。。
1 回答
慕仙森
TA贡献1827条经验 获得超8个赞
首先要说明的是,js引擎会先执行完所有同步代码,再执行异步回调代码,也就是说首先会开启定时器,然后执行while,而你给的
while (true) {
console.log('1');
}
是一个死循环,永远是true是不会跳出循环的,那么同步代码就不会结束,所以异步回调(计时器里的代码)就不会执行,并且js引擎会卡死
添加回答
举报
0/150
提交
取消