Для каждого из трёх фрагментов JavaScript-кода определите, что будет выведено в консоль, и объясните различия в поведении примитивов, объектов и переназначения ссылок.

Если функция принимает объект и изменяет его свойства, то эти изменения будут видны и снаружи, так как объекты передаются по ссылке.

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

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

Если функция принимает объект и изменяет его свойства, то эти изменения будут видны и снаружи, так как объекты передаются по ссылке.

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

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

Если функция принимает объект и изменяет его свойства, то эти изменения будут видны и снаружи, так как объекты передаются по ссылке.

Пример:

const obj = { value: 1 };

function modify(o) {
  o.value = 2;
  console.log("inside function:", o.value); // 2
}

console.log("before function:", obj.value); // 1
modify(obj);
console.log("after function:", obj.value); // 2

Вывод будет:

before function: 1
inside function: 2
after function: 2

Это происходит потому, что obj и параметр o указывают на один и тот же объект в памяти. Изменения внутри функции отражаются на исходном объекте.

Практика в реальном времени

Подготовьтесь к следующему собеседованию

Interview Boost учитывает вакансию, резюме и технологии и помогает сформулировать ответ прямо во время интервью.

Начать подготовку