Встречается на собеседованиях • сегодня
В чем разница между объявлением функции Function Expression и Function Declaration
Function Declaration объявляется с помощью ключевого слова function и всегда поднимается (hoisted), что позволяет вызывать её до объявления в коде.
javascript
sayHello(); // Работает
function sayHello() {
console.log('Hello!');
}Function Expression создаётся путём присваивания функции переменной. Не поднимается, поэтому вызов до объявления вызовет ошибку.
javascript
sayHi(); // Ошибка: sayHi is not a function
const sayHi = function() {
console.log('Hi!');
};Основные различия:
- Hoisting: Declaration доступна до объявления, Expression — нет.
- Контекст: Expression можно использовать как анонимные функции (колбэки, IIFE).
- Гибкость: Expression удобны для условного создания функций.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы