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

Что будет при вызове функции до ее объявления

В JavaScript при использовании function declaration (объявление функции) функция будет доступна в любом месте своей области видимости, даже если вызвать ее до объявления. Это происходит из-за механизма hoisting (поднятия), когда объявления функций "поднимаются" в начало своей области видимости.

javascript
console.log(foo()); // "Hello"

function foo() {
  return "Hello";
}

Однако с function expression (функциональным выражением) это не сработает, так как поднимается только объявление переменной, а не ее значение:

javascript
console.log(bar()); // TypeError: bar is not a function

var bar = function() {
  return "World";
};

Для стрелочных функций и let/const объявлений поведение аналогично function expression - будет ошибка.

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

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

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

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