freeCodeCamp/guide/chinese/javascript/global-variables/index.md

2.3 KiB
Raw Blame History

title localeTitle
Global Variables 全局变量

全局变量在整个程序的可访问性函数之外声明,而局部变量使用var存储在函数中,仅在该函数的范围内使用 。如果在不使用var情况下声明变量,即使它在函数内部,它仍将被视为全局变量:

var x = 5; //global 
 function someThing(y) { 
 var z = x + y; 
 console.log(z); 
 } 
 
 function someThing(y) { 
 x = 5; //still global! 
 var z = x + y; 
 console.log(z); 
 } 
 
 
 function someThing(y) { 
 var x = 5; //local 
 var z = x + y; 
 console.log(z); 
 } 

全局变量也是当前范围的对象,例如浏览器窗口:

var dog = Fluffy; 
 console.log(dog); //Fluffy; 
 
 var dog = Fluffy; 
 console.log(window.dog); //Fluffy 

最小化全局变量是最佳实践。由于变量可以在程序中的任何位置访问,因此它们可能导致奇怪的行为。

参考文献:

附加信息:

* javascript中的全局var和window.variable有什么区别

JavaScript变量的范围是全局变量或本地变量。 全局变量在函数外部声明,其值可在整个程序中访问/更改。

你应该总是使用var来声明你的变量在本地生成否则它会安装GLOBALLY

注意全局变量,因为它们存在风险。大多数情况下,您应该使用闭包来声明变量。 例:

    (function(){ 
      var myVar = true; 
    })(); 

更多信息: