参数对象
参数是一个类似数组的对象,可以在包含传递给该函数的参数值的函数内部访问。
让我们在 ES5 中创建一个接受 N 个参数的函数:
function func() {
console.log(arguments);
let sum = 0
for (let i = 0; i < arguments.length; i++) {
sum += arguments[i];
}
console.log(sum)
return sum;
}
func(3, 4, 7); //14
func(3, 4, 7, 10, 20); //44
func(3, 4, 4, 8); //19
rest参数
rest 参数也可以执行无限数量的参数。
使用 rest 参数,它的语法与扩展运算符相同,可以将无限数量的参数传递给指定的函数:
function add(...args) {
return args.reduce(function (acc, cur) {
return acc + cur;
})
}
console.log(add(3, 4, 8)); //15
console.log(add(3, 4, 8, 10, 20)); //45
console.log(add(3, 4, 4, 9)); //20
arguments 和 rest 参数之间的区别在于,所有数组方法都可以直接应用于 rest 参数,但不能应用于 arguments。
参数是一个类似数组的对象,可在包含传递给该函数的参数值的函数内部访问。
其余参数语法允许将无限数量的参数添加为数组。
没有函数参数限制,因此无论函数声明指定什么,我们都可以调用函数并传入任意数量的参数。
有两种方法可以创建具有任意数量参数的函数。
日期:2020-06-02 22:16:27 来源:oir作者:oir
