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

Как работает This

this в JavaScript ссылается на контекст выполнения функции. Его значение определяется тем, как функция вызывается:

  1. Глобальный контекст:
    Вне функций this ссылается на глобальный объект (window в браузере, global в Node.js).

    javascript
    console.log(this === window); // true (в браузере)
  2. Метод объекта:
    В методах this ссылается на объект, которому принадлежит метод.

    javascript
    const obj = {
      name: 'Test',
      logName() {
        console.log(this.name); // 'Test'
      }
    };
    obj.logName();
  1. Обычная функция:
    В строгом режиме ('use strict') this будет undefined, иначе — глобальный объект.

    javascript
    function test() {
      console.log(this); // undefined (в strict mode)
    }
    test();
  2. Стрелочные функции:
    Не имеют своего this — берут его из внешнего контекста.

    javascript
    const obj = {
      name: 'Test',
      logName: () => {
        console.log(this.name); // undefined (берет this из глобального контекста)
      }
    };
    obj.logName();
  3. Явное указание:
    Можно привязать this через call, apply или bind.

    javascript
    function greet() {
      console.log(`Hello, ${this.name}`);
    }
    greet.call({ name: 'Alice' }); // Hello, Alice
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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