Глобальные и локальные переменные — важное понятие в программировании. Они различаются областью видимости: глобальные доступны отовсюду, а локальные — только внутри определённых блоков кода (например, функций).
Глобальные переменные
Глобальная переменная доступна из любой части программы.
Локальные переменные
Локальные переменные действуют только внутри функций или других ограниченных блоков кода. Вне своей области видимости они недоступны.
Пример: Глобальные и локальные переменные
Рассмотрим пример:
let global = 12;
let oy = 10;
function test() {
global++;
let oy = 5;
}
test();
document.write("global = " + global + "<br>");
document.write("oy = " + oy);
В этом примере:
- global — глобальная переменная.
- oy — глобальная переменная.
- Функция test() инкрементирует global и объявляет локальную переменную oy со значением 5.
Результат выполнения кода: global = 13 и oy = 10.
Обратите внимание: внутри test() создаётся локальная переменная oy. Она не перезаписывает глобальную oy. Глобальная oy остаётся равной 10, а локальная oy внутри test() равна 5, но доступна только внутри этой функции.
Использование другого имени переменной (например, x) внутри функции сделало бы x недоступной за её пределами.
Область видимости переменных
Принцип работы прост: глобальные переменные объявляются вне функций, локальные — внутри.
Объявление внутри функции переменной с именем глобальной переменной (например, let global = 1; внутри test()) создаёт локальную переменную, которая «затеняет» глобальную внутри функции. Глобальная переменная останется неизменной.
Понимание различий между глобальными и локальными переменными важно для написания чистого, эффективного и поддерживаемого JavaScript кода. Правильное использование области видимости переменных помогает избежать ошибок и упрощает отладку.