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

В чем разница между стрелочной и обычной функциями кроме отсутствия контекста

Основные различия между стрелочными и обычными функциями:

  1. Контекст (this):
  • Обычные функции имеют свой this, который зависит от контекста вызова
  • Стрелочные функции не имеют своего this, берут его из внешнего лексического окружения
  1. Аргументы (arguments):
  • Обычные функции имеют объект arguments
  • Стрелочные функции не имеют arguments, можно использовать rest-оператор
  1. Конструктор:
  • Обычные можно вызывать с new
  • Стрелочные нельзя использовать как конструктор
  1. super и new.target:
  • В обычных функциях работают
  • В стрелочных - нет
  1. Синтаксис:
js
// Обычная
function sum(a, b) { return a + b }

// Стрелочная
const sum = (a, b) => a + b
  1. Поднятие (hoisting):
  • Обычные функции поднимаются
  • Стрелочные - нет (так как это функциональные выражения)
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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