Встречается на собеседованиях • сегодня
В чем разница между именованной и стрелочной функцией
Именованные функции (function foo() {}) и стрелочные (const foo = () => {}) отличаются поведением this, возможностью использования в качестве конструктора и поднятием (hoisting).
this:- В именованной
thisзависит от контекста вызова. - В стрелочной
thisберется из внешней области (лексический контекст).
- В именованной
-
Конструктор:
- Именованную можно вызывать с
new. - Стрелочная не может быть конструктором.
- Именованную можно вызывать с
-
Hoisting:
- Именованная поднимается, можно вызвать до объявления.
- Стрелочная — нет.
Пример:
javascript
console.log(namedFunc()); // Работает (hoisting)
function namedFunc() { return "Hi"; }
console.log(arrowFunc()); // Ошибка (не hoisted)
const arrowFunc = () => "Hi";
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы