Область видимости JavaScript

Область видимости - это набор переменных, к которым у вас есть доступ.

Область видимости функции JavaScript

В JavaScript есть два типа областей видимости:

  • Локальная область видимости
  • Глобальная область видимости

JavaScript имеет область видимости функции: каждая функция создает новую область видимости.

Область видимости определяет доступность этих переменных (видимость).

Переменные, определенные внутри функции, недоступны снаружи функции (не видны).

Локальными переменными JavaScript

Переменные, объявленные в функции JavaScript, становятсяЛокальные переменные

Область видимости локальных переменных extendsЛокальная:Доступны только внутри функции.

Пример

// Здесь используется переменная carName
function myFunction() {
    var carName = "porsche";
    // Здесь используется переменная carName
}

Попробуйте сами

Поскольку локальные переменные можно распознать только в функции, можно использовать одинаковые имена переменных в различных функциях.

Локальные переменные создаются в начале функции и удаляются при завершении функции.

Глобальными переменными JavaScript

Переменные, объявленные вне функции, становятсяГлобальные переменные

Область видимости глобальных переменных extendsГлобальная:Все скрипты и функции на веб-странице могут к ней обращаться.

Пример

var carName = "porsche";
// Здесь используется переменная carName
function myFunction() {
    // Здесь используется переменная carName
}

Попробуйте сами

Переменные JavaScript

В JavaScript объекты и функции также являются переменными.

Область видимости определяет доступность переменных, объектов и функций из различных частей кода.

Автоматически глобальной

Если вы присваиваете значение переменной, которая еще не была объявлена, эта переменная автоматически становитсяГлобальнаяПеременная.

Этот код объявляет глобальную переменную carName, даже если к ней присваивается значение в функции.

Пример

myFunction();
// Здесь используется переменная carName
function myFunction() {
    carName = "porsche";
}

Попробуйте сами

Строгий режим

Все современные браузеры поддерживают запуск JavaScript в "строгом режиме".

Вы узнаете больше о том, как использовать строгий режим, в последующих разделах этого руководства.

В "строгом режиме" глобальные переменные не создаются автоматически.

Глобальные переменные в HTML

С помощью JavaScript глобальная область действия создает полный JavaScript-окружение.

В HTML глобальная область действия - window. Все глобальные переменные принадлежат объекту window.

Пример

var carName = "porsche";
// Этот код может использовать window.carName

Попробуйте сами

Предупреждение

Не создавайте глобальные переменные, если этого не требуете.

Ваши глобальные переменные (или функции) могут заменить переменные (или функции) window.

Любая функция, включая объект window, может заменить ваши глобальные переменные и функции.

Срок действия переменных JavaScript

Срок действия переменных JavaScript начинается с момента их создания.

Локальные переменные будут удалены, когда функция завершится.

Глобальные переменные будут удалены, когда вы закроете страницу.

Параметры функции

Параметры функции также являются локальными переменными функции.