gpt4 book ai didi

javascript - JavaScript:window.top和top.window有什么区别

转载 作者:行者123 更新时间:2023-12-03 09:41:43 25 4
gpt4 key购买 nike

最近,我一直在阅读JavaScript的top功能,并注意到我可以运行window.toptop.window。从我可以看到的功能上没有差异,因此似乎可以同时运行两者似乎很奇怪。

// They appear to be the same here at least:
console.log(window.top === top.window);


MDN documentation

我的问题是,有人知道为什么这个功能存在两次,两者之间有什么区别吗?我想知道诸如浏览器支持方面的差异或与以一种或另一种方式运行它相关的古怪错误之类的问题。

最佳答案

window是全局对象,因此可以像访问独立变量一样访问其属性。因此,在顶层引用top与引用window.top相同。所以问题归结为

window.top


window.top.window
window.top给您一个窗口对象(如果您位于iframe中,它可以与 window相同,或者它可以是一个外部窗口),并且窗口的 window属性是对该同一个 window对象的引用(这是一个怪异的自我-reference),因此这两个引用也完全相同。你可以指望
window.top === window.top.window

始终是 true

关于javascript - JavaScript:window.top和top.window有什么区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59213033/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com