jsは包装と循環を閉じます

1275 ワード

もっと読む
 
function box(){
  var arr = [];
  for(var i=0;i<5;i++){
    arr[i]=function(){
      return i;
    }
  }
  return arr;
}

var b = box();
console.log(b.length);


for(var i=0;i 
  

  5 5

b[i]() , , ,box() 。。。。

 

function box(){
  var arr = [];
  for(var i=0;i<5;i++){
    arr[i]=(
      function(num){
        console.log("ccc="+num)
        return num;
      }
    )(i)
  }
  return arr;
}

var b = box();
console.log(b.length);


for(var i=0;i 
  

  :

num=0
num=1
num=2
num=3
num=4
5
0
1
2
3
4
  、 を させ、 のb[i]は ではなく で されます.