es6可变参数-扩展运算符

Posted lingnweb

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了es6可变参数-扩展运算符相关的知识,希望对你有一定的参考价值。

es5中参数不确定个数的情况下:

//求参数和
function f(){
  var a = Array.prototype.slice.call(arguments);
  var sum = 0;
  a.forEach(function(item){
     sum += item*1;          
  })     
  return sum;  
};
f(1,2,3);//6

es6中可变参数:

function f(...a){
  let sum = 0;
  a.forEach(item =>{
     sum += item*1;
  })    
  return sum;  
}
f(1,2,3);//6

...a 为扩展运算符,这个 a 表示的就是可变参数的列表,为一个数组

合并数组

//es5
var param = [‘hello‘,true,7];
var other = [1,2].concat(param);
console.log(other);//[1, 2, "hello", true, 7]
//es6
var param = [‘hello‘,true,7];
var other = [1,2,...param];
console.log(other);// [1, 2, "hello", true, 7]

 

以上是关于es6可变参数-扩展运算符的主要内容,如果未能解决你的问题,请参考以下文章

ES6系列_4之扩展运算符和rest运算符

为啥编译器不能通过逗号运算符扩展可变参数模板的参数?

ES6 rest参数和扩展运算符

ES6箭头函数rest参数扩展运算符Symbol的使用

ES6的扩展运算符和rest参数

ES6躬行记——扩展运算符和剩余参数