javascript - Stack Overflow JavaScript 代码编辑器 : Members of Global Object 'window' Accessible Directly

标签 javascript

我在 Stack Overflow 的 JavaScript 代码编辑器上注意到,全局对象有很多成员,包括普通的全局浏览器对象 window

当完整路径实际上是 this.window.Promise 时,它​​如何直接提供 window 的成员(例如 Promise,如下所示)

console.log('this in top-level scope: ', this);
console.log('Promise constructor on window object, from top-level scope: ', this.window.Promise);
console.log('Still, grabbing Promise directly works: ', Promise);

最佳答案

因为您看到的实际上是全局窗口本身,其中包含一个自引用:

this === window
window.window === window

这就是每个浏览器中的情况,这并不是 SO 片段的特殊之处。因此,如果您像这样访问它并不重要:

Promise
window.Promise
this.window.Promise
this.window.window.Promise

关于javascript - Stack Overflow JavaScript 代码编辑器 : Members of Global Object 'window' Accessible Directly,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51502984/

相关文章:

javascript - 如何在 typescript 中进行精确的类型检查而不产生运行时副作用?

javascript - 实时更新 Javascript 变量

javascript - 使用 JavaScript 动态显示/隐藏单选按钮组的单选按钮

javascript - 即时创建关键帧,无法消除逗号

javascript - React/Redux - 如何在 componentDidMount 上调度操作

javascript - 到达页面底部后,如何让用户滚动到另一个特定页面?

javascript - 选择选项时如何自动设置表单中的输入值?

javascript - 窗口性能不起作用

javascript - 我可以编写哪个测试来强制执行以下代码

javascript - 获取函数内ajax调用的返回值