javascript中window对象和Object对象的关系是什么?
我理解楼主是对 window
对象理解的不够深入吧。
浏览器对象层次结构的顶部就是 window
对象。它代表什么呢?就是一个浏览器窗口。
一个用户可以在浏览器内部打开多个窗口,其中每个窗口都是一个独立的 window
对象,它们可能会加载不同的 url
,即使同样的 url
地址,它们也是相互独立的。
换种说法, window
对象是浏览器 DOM
中所有对象的父对象,父对象也是对象,因此 window
对象的祖宗也是 Object
。
window是浏览器里的顶级对象,暴露给开发者用于操作浏览器行为的对象。
javascript中的Object是ECMAScript语言规范中的数据类型;
要说这俩者的关系,那就是各个浏览器制造团队(谷歌)在开发的浏览器(chrome)里实现BOM(浏览器对象模型)的时候创造了window对象,并且这个对象是ECMAScript语言规范中的数据类型Object类型的一个实例。
感觉这是底层代码的问题,为啥?请看我的发现:
首先我们得知window对象的构造函数(Window大写开头)的原型链以Object原型为头
然而:
所以我可以知道Object构造函数来自window对象
window对象的直接方法,不是原型上的。
同时window对象的原型又是再Object原型为头的原型链上!
10 回答11.3k 阅读
5 回答4.9k 阅读✓ 已解决
4 回答3.2k 阅读✓ 已解决
2 回答2.8k 阅读✓ 已解决
3 回答2.4k 阅读✓ 已解决
3 回答2.2k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
window 是内置的全局 Object,window 是 Object 创造出来的,通过原型链的方式继承了 Object 的属性和方法