ES6 spread运算符、rest操作符
es6推广的原因在于它更加轻盈方便,spread运算符、rest操作符以及解构赋值知识都是es6的新语法,接下来看看它们都分别是什么。
- spread运算符
spread运算符常常用于数组的解析与构造:
var arr1 = ['a','b','c'];
var arr2 = ['aa','bb','cc'];
//构造数组
var arradd = [...arr1, ...arr2];
console.log(arrs); // ['a','b','c','aa','bb','cc']
//解析数组
var son1,son2;
[son1, ...son2] = arr1
console.log(son1); // 'a'
console.log(son2); //['b','c']
var arr1 = ['a','b','c'];
var arr2 = ['aa','bb','cc'];
在一些特定函数调用中,参数只能接受数列不接受数组。这是spread运算符也派上用场:
const arr = [2,3,1,5];
const maxNum = Math.max(...arr); // 返回5。max函数不接受数组只接受数列
- rest操作符
rest操作符让函数的所有参数可由一个变量统一接收 ,帮助我们创建更加灵活的函数:
function count(...arr){
return arr.length;
}
//调用函数
count('a','b','c'); //返回3,arr长度为3
count(5,2,4,1); //返回4,arr长度为4
原文链接:https://blog.csdn.net/sxjit/article/details/104537089