JS与块作用域

2017-08-22  本文已影响0人  xiaoguo16

JS中没有块作用域的概念,所以下列的代码中的i可以在全局环境中访问,但这样会有一个弊端:污染了全局环境,因为在大型工程中,有可能会导致变量冲突。

for(var i=0;i<5;i++){
    console.log(i)
}

但是JS中仍然有一些语句可以实现块作用域的功能:

JS中块作用域效果的实现:

var obj={
    a:4,
    b:5
};
with(obj){
    a=5;
    b=4;
}
console.log(obj);
try{
    
}catch (err){
    console.log(err)
}

上述代码中的err只可以在catch分句中访问

(function () {
    for(var i=0;i<5;i++){
        console.log(i)
    } 
})()
上一篇下一篇

猜你喜欢

热点阅读