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

Какие знаешь способы изменять контекст объекта

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

  1. .call() – вызывает функцию с указанным контекстом и аргументами через запятую:
js
func.call(context, arg1, arg2);
  1. .apply() – аналогичен .call(), но принимает аргументы в виде массива:
js
func.apply(context, [arg1, arg2]);
  1. .bind() – создает новую функцию с привязанным контекстом (не вызывает сразу):
js
const boundFunc = func.bind(context);
  1. Стрелочные функции – автоматически сохраняют контекст родительской области:
js
const obj = {
  name: 'Test',
  greet: () => console.log(this.name) // this берется из внешнего контекста
};
  1. Присвоение метода – можно временно привязать метод к другому объекту:
js
obj.method = otherObj.method;
obj.method(); // this будет obj
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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