js中,var 修饰变量名和不修饰的区别

js中 容许在定义变量的时候 不加var 修饰符。
js会在当前做用域下寻找上下文是否认义了此变量, 若是没有找到则会为这个变量分配内存。
当且将其视为window的成员。 也就是全局变量。

若是加了var 修饰符。 js会从新为这个变量分配内存,不论当前上下文中是否已经定义过了。
这个变量的做用域就为当前上下文。 即局部变量。

不加var的写法是强烈不推荐的。
1. 语义不清楚。 
2. 团队开发时,容易覆盖掉其它做用域内的变量,引起异常。
3. 给window对象添加没必要要成员。 
等等对象

相关文章
相关标签/搜索