es6扩展运算符,也就是... ,做用是将一个数组转为用逗号分隔的参数序列。node
那么问题来了,咱们为啥要用这么奇怪的东东涅,固然由于它能大大提升咱们的开发效率。因此,可别小看这三个点。es6
1.复制数组(假如数组元素都是基本数据类型)。数组
在es5时代,要想复制数组,最容易想到的是经过for循环一个一个push,或者来个slice()的,如今有了扩展运算符,直接一步搞定:es5
var arr = [1,2,3,4,5]; var copy = [...arr]; copy // [1,2,3,4,5]; arr === copy //false
固然了,合并数组也能够不用concat()了 ,直接扩展运算符搞定。spa
2.将相似数组的对象转换为真正的数组code
任何相似数组的对象能够用扩展运算符转换为真正的数组。好比:对象
var nodeList = document.querySelectorAll('div'); var array = [...nodeList]; Array.isArray(array) //true
var str = 'hello';var aStr = [...str];Array.isArray(aStr) //true