浅析javascript异步执行函数导致的变量变化问题解决思路


Posted in Javascript onMay 13, 2016

浅析javascript异步执行函数导致的变量变化问题解决思路

for(var i=0;i<3;i++)
{
   setTimeout(function(){
     console.log(i)
  },0);
}

控制台输出:
3
3
3

这是因为执行方法的时候for循环已经执行完成每次执行的时候取得都是3 而不是1-2-3这时我们可以使用立即执行函数为每一次循环创建一个变量副本来供定时器调用解决这个问题

for (var i = 0; i < 3; i++) {
      setTimeout(
      (function () {
        var _i = i;
        return function () {
          console.log(_i)
        };
      })(),
     0);
    }

控制台输出:
1
2
3

以上这篇浅析javascript异步执行函数导致的变量变化问题解决思路就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jQuery 获取对象 根据属性、内容匹配, 还有表单元素匹配
May 31 Javascript
jQuery的Ajax的自动完成功能控件简要说明
Feb 22 Javascript
js读取csv文件并使用json显示出来
Jan 09 Javascript
jquery实现动静态条形统计图
Aug 17 Javascript
javascript实现保留两位小数的多种方法
Dec 18 Javascript
移动端滑动插件Swipe教程
Oct 16 Javascript
使用JavaScriptCore实现OC和JS交互详解
Mar 28 Javascript
微信小程序之数据缓存的实例详解
Sep 29 Javascript
微信小程序日历效果
Dec 29 Javascript
jquery 插件重新绑定的处理方法分析
Nov 23 jQuery
vue中touch和click共存的解决方式
Jul 28 Javascript
vue自定义组件实现双向绑定
Jan 13 Vue.js
Javascript基础之数组的使用
May 13 #Javascript
JS判断图片是否加载完成方法汇总(最新版)
May 13 #Javascript
BootStrap扔进Django里的方法详解
May 13 #Javascript
JavaScript重载函数实例剖析
May 13 #Javascript
JS加载iFrame出现空白问题的解决办法
May 13 #Javascript
基于JS判断iframe是否加载成功的方法(多种浏览器)
May 13 #Javascript
JS iFrame加载慢怎么解决
May 13 #Javascript
You might like
日本十大科幻动漫 宇宙骑士垫底,第一已成经典
2020/03/04 日漫
分页详解 从此分页无忧(PHP+mysql)
2007/11/23 PHP
composer.lock文件的作用
2016/02/03 PHP
php获取网站根目录物理路径的几种方法(推荐)
2017/03/04 PHP
thinkPHP5 ACL用户权限模块用法详解
2017/05/10 PHP
javascript 时间比较实现代码
2009/10/28 Javascript
jquery checkbox全选、取消全选实现代码
2010/03/05 Javascript
web的各种前端打印方法之jquery打印插件PrintArea实现网页打印
2013/01/09 Javascript
jQuery实现鼠标经过时出现隐藏层文字链接的方法
2015/10/12 Javascript
Angular.js中定时器循环的3种方法总结
2017/04/27 Javascript
详解vue express启动数据服务
2017/07/05 Javascript
vue.js通过路由实现经典的三栏布局实例代码
2018/07/08 Javascript
微信小程序使用二次贝塞尔曲线画波浪
2018/12/25 Javascript
[58:21]DOTA2亚洲邀请赛 4.3 突围赛 Liquid vs VGJ.T 第二场
2018/04/04 DOTA
[52:07]完美世界DOTA2联赛PWL S3 LBZS vs access 第二场 12.10
2020/12/13 DOTA
[32:30]夜魇凡尔赛茶话会 第一期01:谁是卧底
2021/03/11 DOTA
在服务器端实现无间断部署Python应用的教程
2015/04/16 Python
老生常谈Python进阶之装饰器
2017/05/11 Python
python2.7 json 转换日期的处理的示例
2018/03/07 Python
django 删除数据库表后重新同步的方法
2018/05/27 Python
详解Python Qt的窗体开发的基本操作
2019/07/14 Python
HTML5为输入框添加语音输入功能的实现方法
2017/02/06 HTML / CSS
Weekendesk意大利:探索多种引人入胜的周末主题
2016/10/14 全球购物
SIXPAD智能健身仪英国官网:革命性的训练装备品牌
2018/09/27 全球购物
工程项目经理岗位职责
2013/12/15 职场文书
房地产开发计划书
2014/01/10 职场文书
《挑山工》的教学反思
2014/02/16 职场文书
黄金搭档广告词
2014/03/21 职场文书
家长写给孩子的评语
2014/04/18 职场文书
关于护士节的演讲稿
2014/05/26 职场文书
大学生个人求职信
2014/06/02 职场文书
球队口号
2014/06/18 职场文书
党员“四风”方面存在问题及整改措施
2014/09/24 职场文书
2014年教育实习工作总结
2014/11/22 职场文书
湘江北去观后感
2015/06/15 职场文书
2019最新版劳务派遣管理制度
2019/08/16 职场文书