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

Переопределится ли контекст при вызове bind дважды

Нет, повторный вызов bind не переопределит контекст. bind создаёт новую функцию с жёстко привязанным контекстом, и последующие вызовы bind не изменят его.

javascript
const obj1 = { name: 'Alice' };
const obj2 = { name: 'Bob' };

function greet() {
console.log(Hello, ${this.name});
}

const boundOnce = greet.bind(obj1);
const boundTwice = boundOnce.bind(obj2);

boundOnce(); // Hello, Alice
boundTwice(); // Hello, Alice (не Bob!)

text

Контекст остаётся `obj1`, так как `boundOnce` уже "запомнил" его. Это особенность `bind` — он фиксирует контекст навсегда для созданной функции.
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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