//

作者:lofayo    发布于:

循环与全局变量的访问


循坏快速生成4个代码块,但到了执行某个函数时,i = 4;

var arr = [];
for (var i = 0; i < 4; i++) {
    arr[i] = function() {
      console.log(i);
    }
  }
  arr[2](); //4

总结:其实,是先生成数组的四个元素————四个函数,但到了真正执行时,访问的都是全局变量i  

循环和定时器配合用,也是同样的效果

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

总结:循环的过程,先生成4个定时器,等到去执行每个定时器时候,i = 4;
format_list_numbered

(无)

  1. 1. 循环与全局变量的访问
    1. 1.1. 循坏快速生成4个代码块,但到了执行某个函数时,i = 4;
    2. 1.2. 循环和定时器配合用,也是同样的效果
vertical_align_top

Copyright © 2017 每天寻求一点变化

Powered by Hexo & Theme - Vateral