首页 > 代码库 > javascript闭包原理

javascript闭包原理

输出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]);}

 

javascript闭包原理