全局变量的梗javascript
例1:java
对于var 的理解:将该变量声明在当前的做用域中,或者说执行上下文中。dom
function add() { result = 3; //result变量便是隐喻全局变量 } add(); console.log(result); // 3
即result在全局的变量;函数
function add() { var result = 3; //result变量便是隐喻全局变量 } add(); console.log(result); // error报错
由于var将result变量声明在了add函数里,函数会造成本身的做用域,所以result此时则是一个局部变量。spa
例2:blog
var的连等赋值:ip
function dome() { var a = b = 0; } demo(); console.log(b); // 0; console.log(a); // error报错
连等赋值的顺序是自右向左赋值,第一步,b = 0,但是b并无显式声明,所以属于隐含的全局变量,因此在函数外部输出b至关于输出window.b;作用域
而a的赋值则是相似于var a = (b = 0);从b变量进行值赋值,var声明将aio