更新时间:2021年11月22日09时17分 来源:传智教育 浏览次数:
在了解不定参数和rest语法之前我们先介绍下参数的概念。JavaScript的参数有形参(parameter)和实参(argument),形参相当于函数中定义的变量,实参就是运行函数调用时传入的参数。简单的说,形参就是函数声明时的变量,实参是我们调用该函数时传入的具体参数。
例如下面代码:
<script>
function f(a,b){
console.log(a+b);
}
f(1,4); // 输出 5
</script>
代码中f(a, b)中的a和b就是形参,f(1,4)中的1和4就是实参。
谈到不定参数,我们就必须要了解arguments对象。
arguments对象是一个类数组对象(但不是Array的实例),因此可以使用中括号语法访问其中的元素(第一个参数是 arguments[0],第二个参数是 arguments[1])。而要确定传进来多少个参数,可以访问arguments.length属性。
arguments对象是函数中默认就有的对象,它可以接收到多个不定数量的参数,并且以数组的形式存在。
<script>
function f(a,f,t,...rest){
console.log(rest);
}
f(1,3,4,5,6); //输出[5,6]
function f(...rest){
console.log(rest);
}
f(1,3,4,5,6); // 输出[1,3,4,5,6]
</script>
当不确定要传入多少参数时可以使用 ...rest 表示,rest是一个数组,数组中的数据是没有对应形参的数据。
猜你喜欢