Глобальные объекты JavaScript

Глобальный объект — это обыкновенный объект JavaScript, который служит крайне важной цели: его свойствами являются глобально определенные идентификаторы, доступные программе JavaScript. Когда интерпретатор JavaScript запускается (или всякий раз, когда веб-браузер загружает новую страницу), он создает новый глобальный объект и предоставляет ему начальный набор свойств, которые определяют:
- глобальные константы вроде undefined, Infinity и NaN;
- глобальные функции наподобие
isNaN ()
,parselnt ()
иeval ()
; - функции конструкторов вроде
Date ()
,RegExp ()
,String ()
,Object ()
иArray ()
; - глобальные объекты наподобие Math и JSON.
Начальные свойства глобального объекта не являются зарезервированными словами, но заслуживают такого обращения.
В Node глобальный объект имеет свойство с именем global, значением которого будет сам глобальный объект, поэтому в программах Node вы всегда мо жете ссылаться на глобальный объект по имени global .
В веб-браузерах глобальным объектом для всего кода JavaScript, содержащегося в окне браузера, служит объект Window, который представляет это окно. Глобальный объект Window располагает ссылающимся на самого себя свойством window, которое можно применять для ссылки на глобальный объект. Объект Window определяет основные глобальные свойства, а также довольно много других глобальных свойств, специфичных для веб-браузеров и кода JavaScript на стороне клиента. Потоки веб-воркеров имеют другой глобальный объект, нежели объект Window, с которым они ассоциированы. Код в воркере может ссылаться на свой глобальный объект посредством self.
Наконец, в качестве стандартного способа ссылки на глобальный объект в любом контексте версия ES2020 определяет globalThis. К началу 2020 года данная возможность была реализована всеми современными браузерами и Node.
Подписывайтесь на мою группу в ВК
Материал подготовлен с ❤️ редакцией Кухни IT.