Встречается на собеседованиях • сегодня
В чем разница между способами объявления функции
Разница между function declaration и function expression в JavaScript:
- Function Declaration (объявление функции):
- Поднимается (hoisted), можно вызывать до объявления
- Имеет собственный контекст
this
javascript
sayHello(); // Работает
function sayHello() {
console.log('Hello!');
}- Function Expression (функциональное выражение):
- Не поднимается, вызов до объявления вызовет ошибку
- Может быть анонимной или именованной
- Часто используется в колбэках
javascript
const sayHi = function() {
console.log('Hi!');
};
sayHi(); // Работает- Arrow Function (стрелочная функция):
- Не имеет собственного
this(берет из внешнего контекста) - Не может быть конструктором
- Более компактный синтаксис
- Не имеет собственного
javascript
const greet = () => console.log('Hey!');Выбор зависит от контекста использования и требований к this.

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