...:ES6中扩展运算符(spread)和剩余运算符(rest)以及ES解构赋值

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]

 3.ES6解构赋值

let { foo, bar } = { foo: 'aaa', bar: 'bbb' };
// foo = 'aaa'
// bar = 'bbb'

解构详细参照:https://www.runoob.com/w3cnote/deconstruction-assignment.html

 
 
 
posted @ 2019-10-25 18:07  vickylinj  阅读(952)  评论(0编辑  收藏  举报