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

Какие знаешь методы привязки контекста

В JavaScript есть несколько способов привязки контекста (this):

  1. .bind() - создает новую функцию с привязанным контекстом:
javascript
const boundFunc = someFunc.bind(context);
  1. .call() и .apply() - вызывают функцию с указанным контекстом сразу:
javascript
someFunc.call(context, arg1, arg2);
someFunc.apply(context, [arg1, arg2]);
  1. Стрелочные функции - автоматически сохраняют контекст родительской области:
javascript
const obj = {
  method: () => console.log(this) // this берется из внешней области
};
  1. Привязка в конструкторе (для классов):
javascript
class MyClass {
  constructor() {
    this.method = this.method.bind(this);
  }
}
  1. Декораторы (например, @autobind в TypeScript)

Важно помнить, что .bind() создает новую функцию, а .call()/.apply() вызывают функцию сразу. Стрелочные функции нельзя перепривязать.

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

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

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

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