var v1=0,v2=0,v3=0;
        for(var i=1;i<=3;i++){
            var i2=i;
            (function(){
                var i3=i;
                setTimeout(function(){此处执行的时候for循环已经结束  i=4固定值;i2=3固定值;i3为1 2 3  循环三次
                    v1 +=i;
                    v2 +=i2;
                    v3 +=i3;
                    console.log(v1,v2,v3);执行三次//  4 3 1   -   8 6 3   --  12  9  6
                },1);
            })()
        };
        //console.log(v1,v2,v3);
        setTimeout(function(){
        console.log(v1,v2,v3);
        },100)

setTimeout与 自执行函数结合时,settimeout执行时for循环已经结束自执行函数外部变量的值都已经固定 ;内部的settimeout执行i次,i分别为1 , 2...i,执行i次。

for(var j=0;j<10;j++){
            (function(e){
                
                setTimeout(function(){
                    console.log(e);
                    
                },1000);
            })(j)
        }//0.1.2...9

自执行函数与setTimeout结合计算的更多相关文章

  1. [微信小程序] 当动画(animation)遇上延时执行函数(setTimeout)出现的问题

    小程序中当动画animation遇上setTimeout函数内部使用this.setData函数,通常情况下会出现报错.本文先告诉解决方法,后分析报错原因 1.解决方法: 在 setTimeout() ...

  2. js匿名自执行函数

    匿名自执行函数:没有方法名的函数闭包:闭包是指有权访问另一个函数作用域变量的函数: 通过一个实例来解释: 从网上找到了一个案例,使用了for循环.匿名自执行函数.setTimeout. 案例1: va ...

  3. 立即执行函数(IIFE)的理解与运用

    作为JavaScript的常用语法,立即执行函数IIFE(Immediately-Invoked Function Expression)是值得我们认真去学习探究的. 一.创建函数的两种方式 我们先从 ...

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

    for(var i=0;i<3;i++) { setTimeout(function(){ console.log(i) },0); }控制台输出:333 这是因为执行方法的时候for循环已经执 ...

  5. javascript 延时执行函数

    延时执行函数,貌似有些多此一举, 也许还是有点用 记在这儿 var test = { delay : function(lifetime){ var data; setTimeout(function ...

  6. 每隔一秒自动执行函数(JavaScript)

    http://www.cnblogs.com/xlx0210/archive/2010/03/19/1689497.html 1. setInterval() ——每隔一秒自动执行方法,setInte ...

  7. [JavaScript]自执行函数

    最近在接触mui的时候,遇到了一段代码: (function($, doc) { $.init({ statusBarBackground: '#f7f7f7' }); $.plusReady(fun ...

  8. jacascript 立即执行函数(IIFE)与闭包

    前言:这是笔者学习之后自己的理解与整理.如果有错误或者疑问的地方,请大家指正,我会持续更新! 一直没搞清楚立即执行函数和闭包之间的关系,总结一下: 闭包有很多种理解:访问不到内部作用域,函数就是这样, ...

  9. 详解javascript立即执行函数表达式(IIFE)

    立即执行函数,就是在定义函数的时候直接执行,这里不是申明函数而是一个函数表达式 1.问题 在javascript中,每一个函数在被调用的时候都会创建一个执行上下文,在函数内部定义的变量和函数只能在该函 ...

随机推荐

  1. android 指示器 tablatyout

    <android.support.design.widget.TabLayout/>android 材料设计中新出的控件 package com.weavey.loadinglayout; ...

  2. How to realize the double os in the win8 background.

    Goal: to realize the Ubantu in the windows system os computer. Tools: Ubantu  install  USB MSD, Soft ...

  3. 007-Scala类的属性和对象私有字段实战详解

    007-Scala类的属性和对象私有字段实战详解 Scala类的使用实战 变量里的类必须赋初值 def函数时如果没参数可不带括号 2.不需要加Public声明 getter与setter实战 gett ...

  4. 应用jacob组件造成的内存溢出解决方案(java.lang.OutOfMemoryError: Java heap space)

    http://www.educity.cn/wenda/351088.html 使用jacob组件造成的内存溢出解决方案(java.lang.OutOfMemoryError: Java heap s ...

  5. DataTable转Json字符串(使用Newtonsoft.Json.dll)

    DataTable转Json字符串(使用Newtonsoft.Json.dll) 在需要把DataTable转为Json字符串时,自己手动拼接太麻烦,而且容易出错,费时费力,使用Newtonsoft. ...

  6. 关于 QImage::Format_Mono

    QImage::Format_Mono 为通常所讲的位图模式, QT中本提供了 QBitmap 来作为位图相关的应用, 但其最大弊端在于无法操作图片中 pixel 本身或说相关方法太过繁琐. Mono ...

  7. 5-26课堂作业——组员投票Alpha版存在的问题

    我们在课上讨论了Alpha版目前发现的问题,并通过投票的方式,选出其中三个认为是当前须紧要解决的问题. 问题: 1.缺少数据库: 2.用户体验不良好,游戏难度分区不明显: 3.团队成员共同工作时间少.

  8. MFC中ClistCtrl的=NM_CUSTOMDRAW消息

    =NM_CUSTOMDRAW是你点击列表内部是的消息映射: 例如:我想在我删除一行列表的数据,但是删除后下一行数据继续保持高亮状态 void CChildView::OnDel() { int cou ...

  9. mysql5.7 慢查底里失败的原因

    正确配置: log_output          = FILEslow-query-log = on slow_query_log_file ="D:/MySQL5.7/data/slow ...

  10. POJ1385 计算多边形的重心

    point gravity_center(point* p,int n) {    double area=0.0;    point ZERO;    ZERO.x = 0;    ZERO.y = ...