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

Какие знаешь методы изменения This

В JavaScript this можно изменить несколькими способами:

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

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

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

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