作用:将一个数组转为用逗号分隔的参数序列。
比如:
var arr = [1,2,3]
则 ...arr即 1,2,3
1、浅拷贝
var arr = [1,2,3]
var copyArr = [...arr] // [1,2,3]
2、向集合中添加元素
var arr = [1,2,3]
若想得到一个新的集合 [1,2,3,4,5]
可以写成 var newArr = [...arr,4,5]
顺序不限,若想得到一个新的集合[4,1,2,3,5]
可以写成 var newArr = [4,...arr,5]
3,同2向给一个对象添加一个属性
var person = {
name:"alle",
age : 14
}
若想给person对象添加一个属性height
可以写成
var newPerson = {...person,height: 165}
即 {
name:"alle",
age : 14,
height: 165
}
4、2,3的运用,合并
var arr1= [1,2,3]
var arr2 = [4,5,6]
若想合并 类似于cancat方法
var newArr = [...arr1,...arr2]
即[1,2,3,4,5,6]
5、rest参数
一个函数 function sum (num1,num2){
return num1+num2
}
正常调用为fun(10,11)
可以写成
var arr = [10,11]
sum(...arr)
6、结构对象
var person = {
name:"alle",
age : 14,
height: 165
}
var {name,...others} = person
则others为{
age : 14,
height: 165
}
name 为 "alle"
7、字符串转数组
var name="Alle"
则 var arrName = [...name] // ['A','l','l','e']