Object.assign()
Object.assign() 方法用于将所有可枚举属性的值从一个或多个源对象分配到目标对象。它将返回目标对象。
例子
示例代码如下:
// 定义第一个对象
const obj1 = { a: 1, b: 2, c: 3, d: 4 }
// 定义第二个对象
const obj2 = { b: 5, e: 1 }
// 定义第三个对象
const obj3 = { d: 999 }
const newObj = Object.assign(obj1, obj2, obj3)
console.log(obj1)
// 输出: Object { a: 1, b: 5, c: 3, d: 999, e: 1 }
console.log(newObj)
// 输出: Object { a: 1, b: 5, c: 3, d: 999, e: 1 }
语法
Object.assign(target, …sources)
参数:
target:合并的目标对象
sources:源对象。
返回值也是一个目标对象
描述
如果目标对象中的属性具有相同的键,则属性将被源对象中的属性覆盖。后面的源对象的属性将类似地覆盖前面的源对象的属性。
Object.assign 方法只会拷贝源对象自身的并且可枚举的属性到目标对象
底层是使用了源对象的 [[ Get ]] 和目标对象的 [[ Set ]]