解决参数不固定
剩余参数是es6专门用于收集末尾的所有形参,将其放置到一个形参数组中;

argument的缺陷

1.** 如果和形参配合使用,容易导致混乱
2.** 从语义上,使用arguments获取参数,由于形参缺失,无法从函数定义上理解函数的真实意图

一个函数,只能有一个剩余参数且剩余参数必须为最后一个参数
剩余参数的语法**

  1. function (...形参名){}

示例:

  1. function add(...arr){
  2. console.log(arr)
  3. return arr.reduce((prev,icur)=> prev+icur)
  4. }
  5. console.log(add(1,2,3,4)) // 结果为 10

如图
image.png