Встречается на собеседованиях • сегодня
Влияет ли на работу стрелочной функции привязка контекста через bind
Стрелочные функции не имеют собственного this, они всегда берут его из внешнего лексического окружения. Поэтому вызов bind() на стрелочной функции не имеет эффекта – контекст останется прежним.
javascript
const obj = {
name: 'Test',
regularFunc: function() {
console.log(this.name);
},
arrowFunc: () => {
console.log(this.name); // undefined (берет this из глобальной области)
}
};
const boundArrow = obj.arrowFunc.bind({name: 'Bound'});
boundArrow(); // все равно undefinedВ примере выше bind() не поменял контекст стрелочной функции. Для стрелочных функций стоит просто полагаться на лексический this, а не пытаться менять его через bind/call/apply.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы