Встречается на собеседованиях • сегодня
В чем разница между видами объявления функции
Разница между function declaration, function expression и arrow function:
- Function Declaration (поднимается в scope):
javascript
function sum(a, b) {
return a + b;
}- Function Expression (не поднимается):
javascript
const sum = function(a, b) {
return a + b;
};- Arrow Function (нет своего
this,arguments, не может быть конструктором):
javascript
const sum = (a, b) => a + b;Ключевые отличия:
- Поднятие (hoisting) работает только для declaration
- У arrow functions лексический
this - Syntax разный
- Arrow functions нельзя использовать как конструкторы
- Function expression/arrow можно использовать как IIFE

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