Object Assign: Как объединять объекты в JavaScript
Object.assign() - это стандартный метод JavaScript, который используется для копирования значений всех перечисляемых свойств из одного или нескольких исходных объектов в целевой объект.
Синтаксис метода выглядит следующим образом:
Object.assign(target, ...sources)
где:
- target - целевой объект, в который будут скопированы значения свойств из исходных объектов;
- sources - исходные объекты, которые будут скопированы в целевой объект.
Рассмотрим пример использования метода Object.assign():
const target = { a: 1, b: 2 };
const source = { b: 4, c: 5 };
const merged = Object.assign(target, source);
console.log(merged); // { a: 1, b: 4, c: 5 }
В данном примере мы скопировали свойства объекта source в объект target с помощью метода Object.assign(). При этом, значение свойства "b" в целевом объекте было заменено значением из исходного объекта. Результатом выполнения метода Object.assign() является целевой объект (merged), который содержит копию свойств из всех исходных объектов.
Кроме того, метод Object.assign() также может использоваться для создания нового объекта, не модифицируя при этом исходные объекты:
const obj1 = { a: 1 };
const obj2 = { b: 2 };
const obj3 = { c: 3 };
const newObj = Object.assign({}, obj1, obj2, obj3);
console.log(newObj); // { a: 1, b: 2, c: 3 }
В данном примере мы создали новый объект (newObj), который содержит копии всех свойств из исходных объектов obj1, obj2 и obj3. Для этого мы передали пустой объект в метод Object.assign(), а затем передали вторым и последующими аргументами исходные объекты.
Таким образом, метод Object.assign() позволяет копировать свойства из нескольких исходных объектов в один целевой объект или создавать новый объект, содержащий копии свойств исходных объектов.