为什么我们可以在不指定window对象的情况下访问window.document属性?

时间:2018-05-10 13:50:01

标签: javascript

作为一个JavaScript新手,我看到很多神奇的东西没有在书中解释过。例如,为什么我可以写

document.getElementById('one');

documentwindow的属性时?从我在书中看到的,我们需要写

window.document.getElementById('one');

如果文档是常规对象,就像我们自己创建的任何对象一样。

什么允许我们在使用window属性时省略document父对象?

我用Google搜索了,但我找不到解释。

2 个答案:

答案 0 :(得分:2)

window是浏览器中的Global对象, because of the way scope works in JavaScript ,Global对象将始终是搜索某些内容的最后位置。因此,省略window是可以的,因为最终会在“范围链”的末尾找到它。

documentwindow的属性,因此,您无需使用window对其进行限定即可找到它,因为当浏览器到达window时并且仍然没有找到它正在寻找的内容,它将查看window的属性并在那里找到document

答案 1 :(得分:0)

window代表浏览器的窗口。 所有全局JavaScript对象,函数和变量都自动成为窗口对象的成员。

document也是全局对象的属性,因此可以window.documentdocument进行访问。

有关详细信息,请参阅here.