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

Как работает this со стрелочными функциями

Стрелочные функции не имеют собственного контекста this. Они захватывают this из окружающего лексического контекста (как обычная переменная). Это отличается от обычных функций, где this определяется в момент вызова.

javascript
const obj = {
  name: 'Alice',
  regularFunc: function() {
    console.log(this.name); // 'Alice' (this = obj)
  },
  arrowFunc: () => {
    console.log(this.name); // undefined (this берется из внешней области)
  }
};

obj.regularFunc(); 
obj.arrowFunc();

Особенности:

  • Нельзя изменить this через call/apply/bind
  • Не подходят для методов объекта
  • Идеальны для колбэков, где нужно сохранить контекст
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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