Browser Object Model и объект window
Большое значение в JavaScript имеет работа с веб-браузером и теми объектами,
которые он предоставляет. Например, использование объектов браузера позволяет манипулировать элементами html,
которые имеются на странице, или взаимодействовать с пользователем.
Все объекты, через которые JavaScript взаимодействует с браузером,
описываются таким понятием как Browser Object Model (Объектная Модель Браузера).
Browser Object Model in JavaScript
В вершине находится главный объект - объект window, который представляет собой браузер. Этот объект в свою очередь включает ряд других объектов, в частности, объект document, который представляет отдельную веб-страницу, отображаемую в браузере.
Объект window
Объект window представляет собой окно веб-браузера, в котором размещаются веб-страницы. window является глобальным объектом, поэтому при доступе к его свойствам и методам необязательно использовать его имя. Например, window имеет метод alert(), который отображает окно сообщения. Но нам необязательно писать: window.alert("Привет мир!"); window можно не использовать: alert("Привет мир!"); Но так как данный объект глобальный, то это накладывает некоторые ограничения. Например:
var alert = function(message){
document.write("Сообщение: " + message);
};
window.alert("Привет мир!");
Все объявляемые в программе глобальные переменные или функции автоматически добавляются к объекту window.
И поскольку название новой функции будет совпадать с названием метода alert(), то произойдет переопределение
этого метода в объекте window новой функцией.
И если мы объявим в программе какую-нибудь глобальную переменную,
то она нам доступна как свойство в объекте window:
var message = "hello"; document.write(window.message);Output