5 лет назад
Копирование объектов в JS
Перевод этой статьи. В этой статье мы рассмотрим разные способы поверхностного и глубокого копирования объектов в JavaScript. Для начала стоит освежить пару базовых принципов. Объекты в JavaScript – это просто ссылки на участок в памяти. Эти ссылки мутабельны, т.е. их можно переназначить. Когда мы делаем копию такой ссылки, мы просто получаем 2 ссылки, которые указывают на один и тот же участок в памяти: В примере выше обе переменные – foo и bar – будут меняться при изменении одной из них. Это яркий...
На этом нюансе споткнется даже опытный JavaScript-программист. Неожиданности при копировании объектов
Глубокое копирование объектов, тема на которой может споткнуться и бывалый программист. Лучше основательно вникнуть в нюансы, чтобы избежать часы мучений в поисках ошибки. Spread-оператор для копирования объектов JavaScript Каждый JavaScript-программист знает, что копирование объектов происходит по ссылке, а не по значению. Проблема легко решается с использование Spread-оператора. Вместо прямого копирования в строке «const ObjB = ObjA», достаточно написать «const ObjB = {...ObjA}» и проблема будет решена...