Object.assign 是 JavaScript 中用于将一个或多个源对象的属性复制到目标对象的方法。它接受一个目标对象和一个或多个源对象作为参数,并返回目标对象。
语法:
Object.assign(target, ...sources)
target:目标对象,源对象的属性将被复制到该对象。sources:一个或多个源对象,它们的属性将被复制到目标对象。
Object.assign 方法会将源对象的可枚举属性复制到目标对象。如果多个源对象具有相同的属性,则后续源对象的属性将覆盖之前源对象的属性。Object.assign 方法只会复制源对象自身的属性,不会复制继承的属性。
示例:
const target = { a: 1, b: 2 };
const source1 = { b: 3, c: 4 };
const source2 = { c: 5, d: 6 };
const result = Object.assign(target, source1, source2);
console.log(result); // 输出:{ a: 1, b: 3, c: 5, d: 6 }
在上面的示例中,我们将源对象 source1 和 source2 的属性复制到目标对象 target 中,并将结果存储在 result 中。最终输出的结果为 { a: 1, b: 3, c: 5, d: 6 },其中源对象的属性覆盖了目标对象相同属性的值。