//js私有作用域,js没有块级作用域
function Box(){
for(var i=0;i<5;i++){}
console.log(i);//5,如果js有块级作用域,那么i在for循环外面就不可能取得到,那么如何将其私有化呢?如下:
}
Box();
function Mybox(){
(function(){//用一个自我执行的匿名函数将其包裹起来就可以实现变量的私有化
for(var i=0;i<5;i++){
console.log(i);//0 1 2 3 4
}
//变量i走出匿名函数就被自动销毁,防止变量命名冲突
})();
console.log(i);//报错,i is not defined
}
Mybox();