小白问题,求给位赏脸
for (var i = 0; i < 5; i++) {
setTimeout(function() { console.log(i); }, i * 1000 );
}
知道输出5个5 知道这快是事件队列和作用域引起的,但是当使用闭包时结果不同;
for (var i = 0; i < 5; i++) {
(function(x) { setTimeout(function() { console.log(x); }, x * 1000 );})(i);
}
一次输出0, 1,2,3,4 ;
可是 里面这和立即执行函数的作用是什么?是直接改变了事件队列吗?
求大神,大佬指点~~
米琪卡哇伊
相关分类