我们知道alert()是阻塞式的,但是一下代码执行顺序有问题
执行顺序有问题( chrome 和 opera 有问题,FF,IE11 没问题)
for(let i = 0; i < 5; i++){
setTimeout(() => alert(i), 1000);
}结果: 0,3,2,1,4 或者其他顺序
这样写也没问题
for(let i = 0; i < 5; i++) setTimeout(alert(i), 1000);
这样写执行顺序就没问题
for(let i = 0; i < 5; i++){
setTimeout(() => console.log(i), 1000);
}结果:0,1,2,3,4
这是为什么呢?
一只斗牛犬
慕工程0101907
随时随地看视频慕课网APP
相关分类