剩余参数

JavaScript017

剩余参数,第1张

如果一个函数的最后一个形参是以 ...为前缀的,则在函数被调用是,该形参会成为一个数组,数组中的元素都是传递给该函数的多出来的实参的值。

1、剩余参数语法允许我们将一个不定数量的参数表示为一个数组。例如

2、利用剩余参数我们可以定义一个形参不固定的计算和的函数。

3、剩余参数和数组解构配合使用

4、剩余参数和对象解构配合使用

和对象配合使用应该叫做剩余元素

对于一个普通函数fn,函数内部内置了一个 arguments 对象,当用于接收实参的形参个数不确定时,可以用arguments接收。

arguments展示形式是一个伪数组。

伪数组也叫类数组,并不是真正意义上的数组,是一组具有数组的length属性以及下标,但是不具有数组的push、pop、reverse等方法的对象。

箭头函数里不能使用arguments获取参数列表。

但是可以使用剩余参数获取参数列表。

剩余参数语法允许我们将一个不定数量的参数表示为一个数组。

具有伪数组不具有的pop、push、sort方法等。

1. 剩余参数只包含那些没有对应形参的实参,而 arguments 对象包含了传给函数的所有实参。

2. 剩余参数是真正的数组,arguments对象不是一个真正的数组。

3. arguments对象还有一些附加的属性。

arguments对象的属性:

END

下一篇:7种不同函数内的this指向问题

推荐阅读:

1. 高阶函数(Higher-order function)

2. 闭包(closure)