使用展开运算符拷贝对象
展开运算符可用于具有 iterator 接口(可遍历数据类型)的数据的展开,比如展开数组
而想要使用展开运算法展开一个 Object 对象类型是会报错的(但是在 React 中使用展开运算法展开一个对象,经过 babel 编译之后,是可以成功使用展开运算符展开一个对象的。但是这种方法仅适用于标签的属性传递,不能直接在 JS 语句中使用进行使用)
但是可以通过花括号包裹的方式实现对一个对象字面量的浅拷贝
//构造字面量对象时使用展开语法
let person = {name:'tom',age:18}
let person2 = {...person}
//console.log(...person); //报错,展开运算符不能展开对象
person.name = 'jerry'
console.log(person2);
console.log(person);
//合并(可新增属性,也可以修改原有属性)
let person3 = {...person,name:'jack',address:"地球"}
console.log(person3);