ECMAScript6: rest参数
来自CloudWiki
rest参数
ES6中引入rest参数,在函数的命名参数前添加三个点(...),就表明这是一个rest参数,用于获取函数的多余参数。rest参数就是一个数组,包含着自它之后传入的所有参数,通过这个数组名就可以逐一访问里面的参数。
function calculate(op, ...data){ if(op === "+"){ let result = 0; for(let i = 0; i < data.length; i++){ result += data[i]; } return result; } else if(op === "*"){ let result = 1; for(let i = 0; i < data.length; i++){ result *= data[i]; } return result; } } console.log(calculate("*", 2, 3, 4));
注意
每个函数最多只能声明一个rest参数,并且它只能是最后一个参数
如下面的就是错误的:
function calculate(op, ...data, last){ }