rest参数和一个变量名搭配使用,生成一个数组,用于获取函数多余的参数,demo:
function input(...params){
console.log(params)
}
input(1,2,3,4) //[1,2,3,4]
function input2(a,b,...params){
console.log(params)
}
input2(1,2,3,4) //[3,4]
rest参数作用: 将多余的逗号分隔的参数序列转换为数组参数
注意: rest参数必须是最后一个参数,否则报错
扩展运算符
扩展运算符可以理解为rest参数的逆运算,将数组转换为逗号分隔的参数序列,应用如下
arr1 = [1,2,3]
arr2 = [4,5,6]
arr3 = [7,8,9]
arr4 = [...arr1, ...arr2, ...arr3] //[1,2,3,4,5,6,7,8,9] 用于数组合并
list = [a,b,c,d,e]
let [a,b, ...c] = list
a //a
b //b
c //[c,d,e]
// 用于解耦,感觉这有点像是rest参数的应用,应为结果是数组