Почему моя функция JavaScript возвращает неопределенное значение, хотя переменная объявлена? [дубликат]Javascript

Форум по Javascript
Anonymous
Почему моя функция JavaScript возвращает неопределенное значение, хотя переменная объявлена? [дубликат]

Сообщение Anonymous »

Я пытаюсь понять, почему моя функция JavaScript возвращает неопределенное значение, хотя я уже объявил и присвоил значение переменной внутри функции. Вот код, который я написал:

Код: Выделить всё

function test() {
console.log(a);
let a = 10;
}
test();
Я ожидал, что это напечатает 10, но вместо этого выдает ошибку ReferenceError. Я знаю, что переменные, объявленные с помощью let, имеют блочную область действия, но меня смущает, как в этом случае работает временная мертвая зона. Может ли кто-нибудь объяснить, почему это происходит и как обрабатывается переменная во время выполнения?

Подробнее здесь: https://stackoverflow.com/questions/798 ... able-is-de

Вернуться в «Javascript»