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

Чем отличаются стрелочные функции от обычных функций в JavaScript

Основные отличия стрелочных функций от обычных в JavaScript:

  1. Синтаксис - стрелочные функции короче:
javascript
const sum = (a, b) => a + b;
  1. Контекст this - стрелочные функции не имеют своего this, они берут его из окружающего контекста:
javascript
const obj = {
  name: 'John',
  greet: function() {
    setTimeout(() => {
      console.log(this.name); // John (берет this из greet)
    }, 100);
  }
};
  1. Отсутствие arguments - в стрелочных функциях нет объекта arguments.

  2. Не могут быть конструкторами - нельзя использовать с new.

  3. Нет свойства prototype.

  4. Нельзя использовать yield - стрелочные функции не могут быть генераторами.

Стрелочные функции лучше использовать для коротких колбэков, где важно сохранить контекст, а обычные - для методов объектов и конструкторов.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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