Чем отличается deep copy от shallow copy?

Middle
355 просмотров
AFK Offer AI

Shallow copy копирует только первый уровень — вложенные объекты остаются ссылками на оригинал. Spread оператор и Object.assign делают shallow copy. Deep copy рекурсивно копирует все уровни вложенности, создавая полностью независимую копию. Раньше для deep copy использовали JSON.parse(JSON.stringify()), но это не работает с функциями, Date, undefined. Сейчас есть structuredClone — нативный метод для глубокого клонирования.

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

Float vs Flexbox vs Grid — когда что?