用法
Object.assign(target,obj1[,obj2,,,,,objn])
注意这里target也会跟着改变
var obj={
a:'123',
b:'456'
}
var o={
c:6
}
var newObj=Object.assign(o,obj)
console.log(o)//{a:'123',b:'456',c:6}
加入源对象的属性是一个对象的索引则这个对象的值改变,复制后的对象里的这个对象也会改变
let a = {a:{b:2}}
let arr = Object.assign(a);
console.log(a.a.b)//2
arr.a.b=3
console.log(a.a.b)//3
- 继承属性和不可枚举属性是不能拷贝的,只能拷贝源对象的可枚举的自身属性,同时拷贝时无法拷贝属性的特性们