ES6新增rest的用法

arguments类似Array但是并不是Array

而rest就是一个Array

用rest替代atguments

eg:给数组排序

//arguments变量的写法:

function sortFunc(){

  return Array.prototype.slice.call(arguments).sort();

}

//而rest参数的写法:
const sortFunc = (...numbers) => number.sort();
eg:function foo(a,b,...rest){
     console.log(a);
     console.log(b);
     console.log(rest);            
}

foo(1,2,3,4,5)        //1,2,Array [3,4,5]
foo(1)    //1, undefined, Array[]

  

rest参数只能写在最后,前面用...标识,从运行结果可知,传入的参数先绑定ab,多余的参数以数组形式交给变量rest,所以,不再需要arguments我们就获取了全部参数。

如果传入的参数连正常定义的参数都没填满,也不要紧,rest参数会接收一个空数组(注意不是undefined)。

posted @ 2018-09-20 23:14  Pearl_Ran  阅读(3843)  评论(0编辑  收藏  举报