一,可变参数(收集)
function foo(a,b, ...c) {
console.log(a,b,c)
}
foo(1,2,3,4,5) // 结果 1,2[3,4,5]
// 如果没有命名参数的话,...就会收集所有的参数:
function foo(...args) {
console.log(args)
}
foo(1,2,3,4,5) // [1,2,3,4,5]
// 注意这个运算符一定是在最后一个参数的位置,因为官方对其定义为“收集前面剩下的参数”,如果不在最后一位,会报错。
二,扩展运算符(展开)
对于以下的数组,如果我们想取得一个新数组【1,2,3,4,5,6】,应该如何办?就可以用三点运算符。
let arr1=[1,6]
let arr2=[2,3,4,5]
let arr3=[1,...arr2,6]
console.log(arr3) [1,2,3,4,5,6]
三,将伪数组转化为真数组
const node = document.getElementByClassName('test')
const arr = [...node]
console.log(node) // HTMLCollection
console.log(arr) // Array