1.5 KiB
1.5 KiB
title, localeTitle
| 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 , undefined和Infinity属性以及以下函数:
decodeURI()decodeURIComponent()encodeURI()encodeURIComponent()escape()eval()GetObject()isFinite()isNaN()parseFloat()parseInt()ScriptEngine()ScriptEngineBuildVersion()ScriptEngineMajorVersion()ScriptEngineMinorVersion()unescape()
参考
- MSDN: 全局对象(Javascript)