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

Можно ли поменять контекст в стрелочной функции

Стрелочные функции не имеют собственного контекста (this), они наследуют его из окружающей лексической области. Поэтому изменить this в стрелочной функции через call(), apply() или bind() нельзя.

javascript
const obj = { value: 42 };
const arrowFunc = () => console.log(this.value);

arrowFunc.call(obj); // undefined (не сработает)

Обычная функция:

javascript
function regularFunc() {
  console.log(this.value);
}
regularFunc.call(obj); // 42 (контекст изменен)

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

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

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

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

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