其实也没啥分享的就是自己犯下的一个小小的错误
连续的犯了好几次,就想写个话题提醒一下,估计大部人人不会犯错,不过给初学者说一下
rest参数是参数不是数组,
function age (...a){
console.log(a[0])
}
age(参数1,参数2)
注意这里当声明rest参数使用…+参数名称,当调用的时候是使用的参数调用的,rest 参数就是arguments的作用,调用函数的时候一定是参数而不是传入一个数组,如果是像传入一个数组的话就应该使用解构赋值:
function age1 ([a,b]) {
console.log(a)
}
age1([1,2])
如果使用解构赋值了那么相应的是数组,函数调用的就传入一个数组,是对象的话就传入对象age2({a=2,b})这种即可
还有个 … 这个单独使用叫做扩展运算符,它跟rest参数是相对应的通俗点 res参数是指将一些参数汇集成一个数组,然而扩展运算符就是将数组变成一个一个的参数,这在数组的合并,将数组改变为参数,(比如说 push,只能接受参数不能接受数组就可以使用…[])