Что можно сделать, чтобы во втором console.log вывелось 'Alice', а не undefined? Допиши код с использованием bind.

Если getName читает this.name, создайте связанную функцию через obj.getName.bind(obj), где obj.name равно 'Alice'.

Короткий ответ

Что ответить на собеседовании

Если getName читает this.name, создайте связанную функцию через obj.getName.bind(obj), где obj.name равно 'Alice'.

Подробный разбор

Ответ с пояснениями

Если getName читает this.name, создайте связанную функцию через obj.getName.bind(obj), где obj.name равно 'Alice'.

Например: const obj = { name: 'Alice', getName() { return this.name; } }; const getName = obj.getName.bind(obj); console.log(getName());. Без исходного кода это иллюстрация принципа, а не точная правка второй строки. Для стрелочного метода bind не заменяет лексический this.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее