全局对象是始终存在于全局范围内的对象。在 JavaScript 中总是定义一个全局对象。
是否可以有多个全局对象?为什么人们说 Window 是全局对象,而 MDN 却没有这么说?
最佳答案
每个浏览器窗口都有一个顶级Window
对象,通常称为全局对象。全局对象可通过 window
变量访问。
该对象公开了许多属性,最重要的是 document
,它也是一个对象、方法和事件。
开发人员可以(通过脚本)定义变量 (var
) 和函数
,它们会自动成为 window
的属性和方法(全局) 对象(前提是它们是在顶级(全局)级别声明的)。
例如,表达式 var a = 1;
声明一个名为 a
的变量(并为其分配数值)。该变量可通过其名称 (a
) 以及 window.a
和 window['a']
访问。
对全局 window
对象的引用可以省略,因此 window.a = 2;
和 a = 2;
是等效的(但不是 >['a'] = 2;
这是语法错误)。
另请注意,全局 window
对象属于浏览器窗口,而不是 JavaScript。浏览器仅将其暴露给脚本引擎。
这是 javascript
基础知识。
我希望这个解释能消除你的困惑。
关于javascript - 关于全局对象的几个问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55545105/