Глобальная область видимости — это самый внешний уровень твоего JavaScript кода. Переменные, объявленные здесь, доступны откуда угодно в программе — во всех функциях и блоках кода.
window в браузерахЛокальная область видимости ограничивает доступ к переменной конкретной функцией или блоком, где она определена. Есть два типа:
var, доступны везде внутри этой функцииlet или const, ограничены заключающим их блоком {}var x = "global";
function example() {
var x = "local";
console.log(x); // "local"
}
console.log(x); // "global"
В нестрогом режиме присваивание значения необъявленной переменной автоматически создаёт глобальную переменную:
function riskyFunction() {
accidentalGlobal = "oops"; // Нет var, let или const!
}
Это частый источник ошибок. Использование "use strict" или явное объявление переменных через let или const предотвращает такое поведение и делает код более предсказуемым и удобным в поддержке.
Переменные, объявленные с let внутри функции, имеют область видимости функции, то есть они доступны везде внутри этой функции так же, как и объявления var.
Новый — ещё не проверен сообществом
Вы