Object.assign(target, ...sources) — это встроенный JavaScript метод, используемый для копирования свойств из одного или нескольких исходных объектов в целевой объект. Он возвращает модифицированный целевой объект.
Object.assign() выполняет поверхностное копирование, что является важным ограничением, которое нужно понимать:
const source = { a: 1, nested: { b: 2 } };
const target = Object.assign({}, source);
target.nested.b = 99;
console.log(source.nested.b); // 99 — оригинал изменился!
Object.assign({}, obj)Используй Object.assign() когда тебе нужно быстрое поверхностное объединение или клонирование. Для глубоко вложенных структур предпочитай альтернативы вроде структурного клонирования (structuredClone()) или библиотеки Lodash с функцией cloneDeep, чтобы избежать случайного разделения ссылок.
Object.assign() копирует как перечисляемые, так и неперечисляемые свойства из исходных объектов в целевой объект.
Новый — ещё не проверен сообществом
Вы