时间: 2020-08-25|tag:65次围观|0 条评论

for(var i=0;i<5;i++){  setTimeout(function(){    console.log('delayer:' + i );  }, 0);  console.log(i);}//输出:01234delayer:5delayer:5delayer:5delayer:5delayer:5

闭包实现:delayer: 0, delayer:1…

//方法一:for(var i=0;i<5;i++){  (function(){    var n=i;    setTimeout(function(){      console.log('delayer:' + n );    }, 0)  })();  console.log(i);}//方法二:for(var i=0;i<5;i++){  (function(n){    setTimeout(function(){      console.log('delayer:' + n );    }, 0)  })(i);  console.log(i);}//以上两种方法输出:01234delayer:0delayer:1delayer:2delayer:3delayer:4//方法三:for(var i=0;i<5;i++){  setTimeout(function(n){    console.log('delayer:' + n );  }(i), 0);  console.log(i);}  //输出:delayer:00delayer:11delayer:22delayer:33delayer:44

文章转载于:https://www.jianshu.com/p/b452cc4a316e

原著是一个有趣的人,若有侵权,请通知删除

本博客所有文章如无特别注明均为原创。
复制或转载请以超链接形式注明转自起风了,原文地址《闭包三种方法实现delayer: 0, delayer:1…
   

还没有人抢沙发呢~