全局變量的梗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