Каждый объект в JavaScript представляет собой набор пар «имя-значение». Особую роль играют глобальные объекты: window и global.
Глобальный объект window в веб-браузере
window — глобальный объект в каждом веб-браузере. Он содержит множество свойств, некоторые из которых являются вложенными объектами.
В консоли браузера введите window и нажмите Enter. Вы увидите большой объект со множеством свойств, например:
- innerHeight, innerWidth (числа, представляющие высоту и ширину видимой части окна)
- localStorage (объект, содержащий данные локального хранилища)
- onclick, onclose, ondevicemotion (свойства, значения которых могут быть функциями)
Многие свойства объекта window содержат функции. Например, range или rangeError.
Обратите внимание на свойство console. Развернув его, вы увидите свойства, такие как clear, count, log и другие. Функция console.log доступна напрямую в консоли браузера, поскольку console — свойство объекта window. Доступ к ней также возможен через window.console.log. Например, window.console.log(2 + 2) выведет 4. Это подтверждает, что объекты, подобные console, являются свойствами глобального объекта window.
Глобальный объект global в Node.js
В Node.js глобальным объектом является global. В консоли Node.js введите global и нажмите Enter. Вы увидите большой объект со множеством свойств.
Например:
- process.versions: вложенный объект, содержащий информацию о версиях Node.js, V8 engine и других модулей.
- Доступ к свойствам осуществляется с помощью точечной нотации. Например, global.process.versions.node вернет строку, отображающую версию установленного Node.js.
Объект global в Node.js также содержит свойство console, предоставляющее доступ к функциям, таким как console.log. Вы можете вызывать console.log напрямую или через global.console.log.
Доступ к свойству document
Рассмотрим доступ к свойству document в разных средах:
- В браузере window.document вернет HTML-документ, представляющий содержимое веб-страницы.
- В Node.js global.document вернет undefined, поскольку HTML-документ отсутствует в этой среде.
Рассмотрены глобальные объекты window (в браузере) и global (в Node.js). Эти объекты содержат множество свойств, включая свойство console с функцией log для вывода информации в консоль. Если свойство объекта содержит функцию, такое свойство называется методом. Дальнейшее изучение методов будет рассмотрено в других материалах.