Переприсваивание исходной переменной не меняет ссылку, уже сохранённую в другой переменной. Вторая продолжит указывать на прежний объект.
Что выведется в консоль после присваивания ссылки на объект, а затем переприсваивания исходной переменной новому объекту?
Переприсваивание исходной переменной не меняет ссылку, уже сохранённую в другой переменной. Вторая продолжит указывать на прежний объект.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Условие
Что выведется в консоль после присваивания ссылки на объект, а затем переприсваивания исходной переменной новому объекту?
Ответ
Переприсваивание исходной переменной не меняет ссылку, уже сохранённую в другой переменной. Вторая продолжит указывать на прежний объект.
Пример принципа: let a = { value: 1 }; const b = a; a = { value: 2 }; после этого b.value равно 1, а a.value — 2. Это отличается от изменения a.value до переприсваивания: такую мутацию увидели бы обе ссылки. Точные значения исходного примера без кода не заданы.