1. Object.assign()方法可以把任意多个的源对象自身的可枚举属性拷贝给目标对象,然后返回目标对象。
2. 语法
Object.assign(target, ...sources);
var copy=Object.assign({},{a:1},{b:2});
var copy1=Object.assign({},{a:1},{a:2});
console.log(copy);// { a: 1,b:2 };
console.log(copy1);// { a: 2};
形同属性会被后面的覆盖。
3. 兼容性
![](https://img.haomeiwen.com/i3369258/e17f462cf4f0ebd3.png)
4. 深度拷贝
需要使用其他方法,因为 Object.assign() 拷贝的是属性值。假如源对象的属性值是一个指向对象的引用,它也只拷贝那个引用值。
最简便的深度拷贝方式:JSON.parse(JSON.stringify(obj));
5. 原文地址:https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Object/assign
网友评论