首先,我们先介绍什么叫展开运算符,...这个就是展开运算符,这个...和rest参数的...不一样,rest参数的...是写在方法的形参前面的。
需要注意的是:展开运算符,可以展开对象的全部成员,也可以将一个对象的成员,克隆给另一个对象
接下来我们就一起通过代码实现一下:
比如我这边我先写出两个数组:let arr1 = [11,22,33];let arr2 = [44,55,66] 以前如果我们想把arr1和arr2这两个数组合并的话,需要借助数组的concat()方法:let arr3 = arr1.concat(arr2);=>let arr3 = [11,22,33,44,55,66]
如图:
得到的效果如图:
在ES6中,我们可以通过我们的展开运算符...去实现数组的合并:let arr4 = [...arr1,...arr2];通过这行代码就可以实现效果,最后的结果就是arr4=[11,22,33,44,55,66]
话不多说这就送上我们的实现的代码图:
效果图:
//在这里我们需要咋重新声明的一点是:...展开运算符是将一个数组的对象克隆给另一个数组。
同时:展开运算符,可以将多个对象的成员,合并到一个大的对象中,后面对象中的成员,如果跟前面对象中的成员同名,会覆盖前面的
比如:let obj1 = {
a:100,
b:200
}
let obj2={
c:300,
d:400,
a:500
}
当我们 let obj3 = {...obj1,...obj2};=>{a:500,b:200,c:300,d:400}因为当我们把几个对象合并到一个大的对象当中时,后面同名的属性值会直接覆盖前面的同名的属性值,所以这里的a的值变成了obj2.a的500
效果如图:
实现的效果如图: