Основы учебного пособия по HTML, CSS и JavaScript

Понимание областей видимости в JavaScript

Все видео урока Основы учебника HTML, CSS и JavaScript.

В области программирования понимание областей видимости (Scopes) имеет решающее значение для разработки эффективного и чистого программного обеспечения. В JavaScript существует несколько типов областей видимости, особенно функциональные области видимости. В этом руководстве вы исследуете основы этой концепции и получите полезные примеры для лучшей иллюстрации.

Главные выводы

  • Область видимости определяет, где переменные существуют в программе.
  • Функциональные области видимости создают локальные переменные, которые недоступны вне функции.
  • Глобальные переменные доступны везде в скрипте, что может приводить к потенциальным конфликтам имен.
  • Период жизни переменных связан с их использованием внутри функций.

Пошаговое руководство

1. Простой пример области видимости

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

Здесь выполняется расчет, и результат отображается в HTML-документе. Выводом будет 25, если вы вызовете функцию.

Понимание областей видимости в JavaScript

2. Попытка доступа к локальным переменным

Если вы попытаетесь получить доступ к локальной переменной за пределами функции, вы столкнетесь с проблемами. Это означает, что вы не можете обращаться к переменной ergebnis извне функции.

Поскольку переменная ergebnis не существует, вы получите ошибку, если попытаетесь ее вызвать. Это важный признак области видимости переменных.

Понимание области видимости в JavaScript

3. Создание глобальных переменных

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

function berechnung() { ergebnis = 5 * 5; // Изменяет глобальную переменную }

Здесь переменная ergebnis создается в глобальном пространстве имен. Когда вы теперь вызываете функцию, значение ergebnis устанавливается на 25, и вы также можете получить доступ к этому значению извне функции.

Понимание областей видимости в JavaScript

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

Ключевое различие заключается в том, где объявлены переменные. Локальные переменные, объявленные внутри функции, существуют только на время выполнения функции. Глобально объявленные переменные видимы для всего скрипта.

Если вы хотите изменить локальную переменную, которая существует в глобальном пространстве имен, вы должны убедиться, что доступ выполнен корректно.

5. Имплицительное объявление переменных

Важно отметить, что вы можете объявить переменную и без ключевого слова let или var. В этом случае переменная также становится глобальной.

Хотя это работает, это не рекомендуется, так как может сделать ваш код неясным и привести к неожиданным конфликтам.

6. Период жизни переменных

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

Понимание областей видимости в JavaScript

7. Ясность через явное объявление

Чтобы сделать ваш скрипт более понятным, всегда следует явно объявлять переменные. Это поможет вам отслеживать, где и сколько переменных существует, и предотвратить появление нежелательных глобальных переменных.

8. Вывод о областях видимости

Области видимости в JavaScript являются фундаментальными для понимания того, как переменные действуют внутри функций. JavaScript различает локальные и глобальные пространства имен. Глубокое понимание этой концепции имеет решающее значение для чистого и эффективного программирования.

Резюме – Основы областей видимости в JavaScript

Понимание областей видимости в JavaScript имеет большое значение для эффективного программирования. Понимая разницу между локальными и глобальными переменными, вы можете создавать эффективные и поддерживаемые структуры кода.

Часто задаваемые вопросы

Что такое области видимости?Области видимости определяют, где переменные существуют в программе и какие права доступа у них есть.

В чем разница между локальными и глобальными переменными?Локальные переменные существуют только внутри функции, тогда как глобальные переменные доступны во всем скрипте.

Насколько долго существуют локальные переменные?Локальные переменные существуют только во время выполнения функции, в которой они объявлены.

Почему переменные следует явно объявлять?Явные объявления сохраняют код понятным и предотвращают появление нежелательных глобальных переменных.

274