Встречается на 2% собеседований по JavaScript

Что такое контекст вызова

Контекст вызова (this) — это ссылка на объект, в контексте которого выполняется функция. Определяется в момент вызова функции и зависит от способа вызова.

Основные случаи:

  1. Глобальный контекст — в нестрогом режиме this ссылается на window, в строгом ('use strict') — undefined.
  2. Метод объектаthis ссылается на сам объект.
  3. Конструктор (new) — this ссылается на новый созданный объект.
  4. Явное указаниеcall, apply, bind позволяют задать контекст явно.

Пример:

javascript
const obj = {
  name: 'Test',
  logName() {
    console.log(this.name);
  }
};

obj.logName(); // 'Test' (контекст — obj)
const log = obj.logName;
log(); // undefined (контекст потерян)
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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