Сообщение от MallSerg
|
Похоже тут нужен КЕП.
1. Свойство глобального объекта Window это ссылка на глобальный объект.
2. Глобальный объект это глобальный объект.
2.1 В JavaScript есть наследование. Любой объектный тип данных наследует свойства у Object.
2.2 Так как глобальный объект это объект то у него могут быть свойства. (null, undefined).
Глобальный объект это обычно простой экземпляр Object который расширяется специальными свойствами описанными в спецификации. Нужен он для того чтобы было возможно организовать контекст исполнения (области видимости для функций) т.е. если грубо на пальцах это место(объект) где хранятся переменные т.е реализует механизм сохранения и обращения к данным. Данные не могут висеть в воздухе нужен механизм(правила, соглашение) для того что обратится к ним. Глобальный объект как раз и служит набором правил по сохранению и использованию данных.
Rashid6 похоже думает что "Object" ,"window" и "Глобальный объект" это разные типы данных (классы как в C#)
На самом деле window это идентификатор хранящий ссылку на "Глобальный объект" который является экземпляром "Object".
|
Во спасибо, да я думал как классы. Теперь понятно что window это Глобальный объект, и у него не должно быть конструктора, ссылается на объект - потому что сам window это объект. Все логично, всем спасибо!