Встречается на собеседованиях • сегодня

Какое значение хранит переменная var до её объявления

В JavaScript переменные, объявленные через var, подвержены hoisting (поднятию). Это означает, что переменная существует в области видимости с самого начала выполнения кода, но до её объявления она имеет значение undefined.

javascript
console.log(x); // undefined (не ReferenceError!)
var x = 5;

Фактически код выше интерпретируется так:

javascript
var x;          // объявление поднято
console.log(x);  // undefined
x = 5;           // присваивание остаётся на месте

Важно: let и const тоже подвержены hoisting'у, но их TDZ (Temporal Dead Zone) вызывает ошибку при обращении до объявления.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы