Встречается на собеседованиях • сегодня
Как работать с контекстом у функции
Контекст функции (this) определяется в момент её вызова, а не объявления.
Основные способы управления контекстом:
- Вызов как метода объекта
js
const obj = {
name: 'John',
greet() { console.log(`Hello, ${this.name}`) }
};
obj.greet(); // Hello, John- Явное указание контекста
call()иapply()- вызывают функцию с указаннымthisbind()- создаёт новую функцию с привязанным контекстом
js
function greet() { console.log(`Hello, ${this.name}`) }
const user = { name: 'Alice' };
greet.call(user); // Hello, Alice
const boundGreet = greet.bind(user);
boundGreet(); // Hello, Alice- Стрелочные функции - не имеют своего
this, берут его из внешней области
js
const obj = {
name: 'Bob',
greet: () => console.log(`Hello, ${this.name}`) // undefined (берет window)
};Для классов контекст обычно привязывают в конструкторе или используют стрелочные методы.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы