分配来源对象的可枚举属性到目标对象上。 来源对象的应用规则是从左到右,随后的下一个对象的属性会覆盖上一个对象的属性。
示例:
let obj1 = {
a: 1,
b: 2,
desc: { age: 18, name: "某人" },
arr: [1, 2],
};
let obj2 = { c: 3 };
let obj3 = _.assign({ a: 0 }, obj1, obj2); //a:0会被覆盖为a:1
obj3.b = 10;
obj3.desc.age = 20;
obj3.arr[0] = 5;
console.log("obj1", obj1);
console.log("obj3", obj3);
obj3的desc、arr重新赋值,obj1的值会同步更改(浅拷贝)
输出结果: