js中 允许在定义变量的时候 不加var 修饰符。
js会在当前作用域下寻找上下文是否定义了此变量, 如果没有找到则会为这个变量分配内存。
当且将其视为window的成员。 也就是全局变量。
如果加了var 修饰符。 js会重新为这个变量分配内存,不论当前上下文中是否已经定义过了。
这个变量的作用域就为当前上下文。 即局部变量。
不加var的写法是强烈不推荐的。
1. 语义不清楚。
2. 团队开发时,容易覆盖掉其它作用域内的变量,引发异常。
3. 给window对象添加不必要成员。
等等
时间: 2024-10-10 23:38:52