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

Как можно работать с контекстом в JS

В JavaScript контекст (this) определяется тем, как вызывается функция. Основные способы управления контекстом:

  1. Вызов функции – контекст зависит от вызова:
    • Обычный вызов: this = window (или undefined в strict mode)
    • Метод объекта: this = объект
    js
    const obj = {
      name: 'Test',
      logName() { console.log(this.name); }
    };
    obj.logName(); // 'Test'
  1. Явное указание контекста:

    • call() и apply() – вызывают функцию с указанным this
    • bind() – создает новую функцию с привязанным контекстом
    js
    function greet() { console.log(`Hello, ${this.name}`); }
    const user = { name: 'Alice' };
    greet.call(user); // 'Hello, Alice'
  2. Стрелочные функции – не имеют своего this, берут его из внешней области

    js
    const obj = {
      name: 'Test',
      logName: () => console.log(this.name) // this = window
    };

Важно помнить, что контекст теряется при передаче методов как колбэков.

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

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

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

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