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

1.5 KiB
Raw Blame History

title localeTitle
Global Object 全球对象

全局对象是在执行代码之前由JavaScript解释器初始化的对象。在全局范围参见 Scopes )上声明的所有变量都作为属性存储在全局对象中。

在Node.js环境中全局对象可以通过global关键字访问,而在浏览器窗口中,可以通过window关键字访问它。在全局范围中使用时, this关键字也引用全局对象。请注意,如果启用了strict mode则在全局范围内使用this将返回undefined

例如:

// global scope 
 var foo = "bar"; 
 
 console.log(global.foo); // bar (in a Node environment) 
 console.log(window.foo); // bar (in a browser window) 
 console.log(this.foo); // bar (if strict mode is disabled) 

函数本地范围与全局范围之间的区别在此非常重要:全局对象仅包含在全局范围内声明的变量,而不包含函数的本地范围。

全局对象还包含NaN undefinedInfinity属性以及以下函数:

  1. decodeURI()
  2. decodeURIComponent()
  3. encodeURI()
  4. encodeURIComponent()
  5. escape()
  6. eval()
  7. GetObject()
  8. isFinite()
  9. isNaN()
  10. parseFloat()
  11. parseInt()
  12. ScriptEngine()
  13. ScriptEngineBuildVersion()
  14. ScriptEngineMajorVersion()
  15. ScriptEngineMinorVersion()
  16. unescape()

参考

  1. MSDN 全局对象Javascript