Загрузка...
Загрузка...
Область видимости (scope) — это часть кода, в которой переменные и функции доступны для использования. В JavaScript область видимости определяет, где можно ссылаться на переменные, и играет ключевую роль в управлении памятью и предотвращении конфликтов имён.
var globalVar = "I am global"; // или let/const, объявленные вне функций
function showGlobal() {
console.log(globalVar); // доступ к глобальной переменной
}
var имеет функциональную область видимости.function example() {
var localVar = "I am local";
console.log(localVar); // доступно внутри функции
}
console.log(localVar); // ReferenceError: localVar is not defined
let или const внутри блока (например, внутри фигурных скобок {}), доступны только в этом блоке.if (true) {
let blockVar = "I am block-scoped";
console.log(blockVar); // доступно внутри блока
}
console.log(blockVar); // ReferenceError: blockVar is not defined
function outer() {
let x = 10;
function inner() {
console.log(x); // x доступна здесь благодаря лексической области видимости
}
return inner;
}
const innerFunc = outer();
innerFunc(); // 10
function counter() {
let count = 0;
return function() {
count++;
console.log(count);
};
}
const increment = counter();
increment(); // 1
increment(); // 2
Важное замечание:
Область видимости определяет, где переменные и функции доступны в вашем коде. Понимание её принципов помогает избегать ошибок и улучшать читаемость программы.
Область видимости в JavaScript делится на: