Среди объектов существуют определенные взаимоотношения. Например, объекты Navigator имеют структуру, отражающую структуру страницы HTML. Такие отношения называются иерархией экземпляров, так как эта иерархия работает только с конкретными экземлярами объектов, а не с абстрактными классими.
Объект window является родительским по отношению ко всем остальным объектам Navigator. Прямыми потомками объекта window являются объекты location, history и document. Объекты forms, links и anchors являются дочернеми для объекта document.
Каждый объект является потомком объекта более высокого уровня. Форма с названием orderForm является объектом и в то же время свойстом обекта document. Таким образом для вызова такой формы используется выражение: document.orderForm
Иерархию объектов языка JavaScript можно сопоставить с иерархией объектов в реальном мире. Колеса, руль и педали - это все объекты, принадлежащие велосипеду. Велосипед представляет собой объект, принадлежащий к средствам наземного транспорта, которые, в свою очередь, принадлежат к более общей категории средств передвижения.
В терминах объектов JavaScript эти взаимоотношения могли бы быть выражены следующим образом: travelMode.groundTransport.bicycle.handleBars
Наиболее общий объек высшего уровня находится слева в выражении, и слева направо происходит переход к более частным объектам, являющимся при этом наследниками высших в иерархии объектов. Таким образом чтобы обратиться к определенному свойству этих объектов, вы должны определить имя объекта и всех его предков.
Теперь проиллюстрируем иерархию объектов: navigator window | +--parent, frames, self, top | +--location | +--history | +--document | +--forms | | | elements (text fields, textarea, checkbox, password | radio, select, button, submit, reset) +--links | +--anchors