JavaScript 全局对象


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

在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)

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

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

  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()

更多JavaScript教程

学习更多JavaScript教程