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

Как присвоить контекст к объекту

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

  1. Методы объекта - контекст автоматически привязывается к объекту:
js
const obj = {
  name: 'Test',
  greet() {
    console.log(this.name); // 'Test'
  }
};
  1. Явное связывание с call(), apply(), bind():
js
function greet() {
  console.log(this.name);
}

const obj = {name: 'Alice'};

greet.call(obj); // 'Alice'
const boundGreet = greet.bind(obj);
boundGreet(); // 'Alice'
  1. Стрелочные функции - наследуют контекст из окружающей области:
js
const obj = {
  name: 'Bob',
  greet: () => console.log(this.name) // undefined (контекст window)
};
  1. В конструкторах - this ссылается на новый объект:
js
function Person(name) {
  this.name = name;
}
const p = new Person('John');
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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