May 31, 2023

Window

Окно" является глобальным объектом в JavaScript. Но только в браузере, в серверном Node.js это неприменимо.

Если вы запускаете эти примеры в терминале с помощью node, это не сработает. Запускайте в ваших любимых браузерах dev tools!

Объявление глобальных переменных в окне в явном виде

window.myName = 'Eric'
console.log(window.myName) // => Eric

Переменные неявно добавляются без ключевого слова window

myName = 'Ted'
console.log(window.myName) // => Eric

любая переменная, объявленная без let или const автоматически является глобальной переменной

function newScope() {
  function evenDeeperScope() {
    windowVar = "I'm on the window"
  }
  evenDeeperScope()
}

newScope()
console.log(window.windowVar) // => I'm on the window

Скопировано из dev-tools консоли!

Eric
Ted
I'm on the window

Подробнее

Далее: замыкания