参数对象
参数是一个类似数组的对象,可以在包含传递给该函数的参数值的函数内部访问。
让我们在 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