JavaScript ES6 扩展运算符,...的使用

作用:将一个数组转为用逗号分隔的参数序列。

比如:
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']