Что такое hoisting (поднятие) в JavaScript?

Hoisting (хойстинг) — это механизм в JavaScript, при котором объявления переменных и функций поднимаются вверх своей области видимости во время компиляции кода.

Короткий ответ

Что ответить на собеседовании

Hoisting (хойстинг) — это механизм в JavaScript, при котором объявления переменных и функций поднимаются вверх своей области видимости во время компиляции кода.

Подробный разбор

Ответ с пояснениями

Hoisting (хойстинг) — это механизм в JavaScript, при котором объявления переменных и функций поднимаются вверх своей области видимости во время компиляции кода.

Это значит, что переменные, объявленные через var, и функции можно использовать до их фактического объявления в коде, хотя для переменных var значение будет undefined до присваивания.

Пример:

console.log(a); // undefined
var a = 5;

foo(); // Выведет 'Hello'
function foo() {
  console.log('Hello');
}

Переменные, объявленные через let и const, не поднимаются таким образом и вызов их до объявления приведёт к ошибке.

Практика в реальном времени

Подготовьтесь к следующему собеседованию

Interview Boost учитывает вакансию, резюме и технологии и помогает сформулировать ответ прямо во время интервью.

Начать подготовку