Какие сущности в JavaScript подвержены hoisting, помимо var?

Декларации функций доступны до строки объявления. Let, const и class тоже создают привязки заранее, но доступ до инициализации ограничен temporal dead zone.

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

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

Декларации функций доступны до строки объявления. Let, const и class тоже создают привязки заранее, но доступ до инициализации ограничен temporal dead zone.

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

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

Декларации функций доступны до строки объявления. Let, const и class тоже создают привязки заранее, но доступ до инициализации ограничен temporal dead zone.

Function expression не становится вызываемой раньше присваивания только потому, что записана в var. Импорты обрабатываются на уровне модулей, а циклические зависимости могут приводить к доступу до инициализации. Hoisting — объяснительный термин, а не буквальное перемещение строк исходного кода.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее