输出5个5
function box(){ var arr = []; for(var i=0; i<5; i++){ arr[i] = function(){ return i; }; } return arr; } var b = box(); for(var i=0; i<5; i++){ console.log(b[i]()); }
输出0,1,2,3,4
function box(){ var arr = []; for(var i=0; i<5; i++){ arr[i] = (function(num){ return num; })(i); } return arr; } var b = box(); for(var i=0; i<5; i++){ console.log(b[i]); }