码迷,mamicode.com
首页 > Web开发 > 详细

js循环异步函数

时间:2018-04-04 20:57:47      阅读:189      评论:0      收藏:0      [点我收藏+]

标签:for   gpo   class   log   需要   cti   pos   time   fun   

js中经常会遇到一个问题:需要循环异步函数,我们经常会这样写:

for(var i=0;i<10;i++){

  setTimeout(function(){

    console,log("输出i的值:”+i)

  },1000)

}

本以为会输出:

输出i的值:0

输出i的值:1

输出i的值:2
输出i的值:3
......
然而事情并不是这样,结果却是:
输出i的值:9
输出i的值:9
输出i的值:9
......
不要急,正确的写法是:

for(var i=0;i<10;i++){

  (function(i){

    setTimeout(function(){

      console,log("输出i的值:”+i)

    },1000)

  })(i)

}
jq的话用$.each遍历就好了。

 

js循环异步函数

标签:for   gpo   class   log   需要   cti   pos   time   fun   

原文地址:https://www.cnblogs.com/coder9527/p/8718582.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!