...:ES6中扩展运算符(spread)和剩余运算符(rest)详解

1.扩展运算符(spread)

 demo1:传递数据代替多个字符串的形式
let test= function(a,b,c){
         console.log(a);
         console.log(b);
         console.log(c);
     };
let arr = [1, 2, 3];
test(...arr);//1,2,3
demo2:将一个数组插入到另一个数据中
var arr1 = [1, 2, 3,4];
var arr2 = [...arr1, 4, 5, 6];
console.log(arr2);//[1, 2, 3, 4, 4, 5, 6]
demo3:字符串转数据
var str='loycoder';
var arr3= [...str];
console.log(arr3);//["l", "o", "y", "c", "o", "d", "e", "r"]

2.剩余运算符(rest)

demo4:当函数参数个数不确定时,用 rest运算符
let rest01= function(...arr) {
        for (let item of arr) {
            console.log(item);
        }
    }
rest01(1, 3, 5);//1,3,5
demo5:当函数参数个数不确定时的第二种情况
let  rest02=function(item, ...arr) {
        console.log(item);
        console.log(arr);
    }
rest02(1, 2, 34);//1,[2, 34]
demo6:rest运算符配合 解构使用:
var [a,...temp]=[1, 2, 4];
console.log(a);
console.log(temp);//1,[2, 4]
 
 
 
原文地址:https://www.cnblogs.com/vickylinj/p/11739473.html