Window 对象,window 函数和对象函数

Window object, window function and Object function

在 Chrome 和 Firefox 中,我可以在控制台中看到:

typeof Window
"function"
typeof window
"object"

你能解释一下区别吗?我的意思是我一直认为 Window 是顶级对象,现在我看到它实际上是一个函数,而 window 是一个对象。由于 window 是顶级对象,因此 Window 应该是 Window 的方法吗?有点混乱...

哦,还有对象,就是...

typeof Object
"function"

那么这三件事之间的关系是什么?

Object 是创建新对象的 cunstructor(函数),Window 也是如此。 window 是一个对象。

然而

window 是 JavaScript 中非常特殊的对象/变量。 window 中包含任何全局变量!这就是为什么 window.window.window 总是一样的,因为它总是指向主 Container

您可以在此处阅读有关 Window 的更多信息:https://developer.mozilla.org/en/docs/Web/API/Window, http://www.w3schools.com/js/js_scope.asp

window是一个对象,Window是它的构造函数。它有点像 window 是对象而 Window 是 class.
window 是全局对象(不是 Window)所以 Window 是它的一个方法是很自然的。由于 Window 是一种特殊情况,您不能像使用 RegExp 或 Date 那样创建另一个 new Window()

alert(window instanceof Window);