es6笔记(3.1)三个点的“...”的作用
展开运算符(spread operator)
ES6中“...”的作用之一是,展开运算符。
顾名思义,它的作用是把某些结合数据展开。
在Array、Object、Set和Map上都可以使用。
//array
let a = [1,2,3];
let b= [0,...a,4]; // b=[0,1,2,3,4]
//object
let obj = {a:1,b:2};
let obj1 = {...obj,c:3}; // {a:1, b:2 , c:3}
//set
let set = new Set([1,2,3]);
let set2 = new Set([...set,3,4]); // Set(4)[1,2,3,4]
//map
let map = new Map([['a',2],['b',3]]);
let map1 = new Map([['c',3],...map]); //Map(3) {"c" => 3, "a" => 2, "b" => 3}
剩余操作符(rest operator)
另一种作用是 用于解构,意思是把剩余的东西放到一个array里,并赋值给 【...变量】。
let a = [1,2,3,4];
let [b,...c] = a;
console.log(b); //1
console.log(c); //[2,3,4]
/*--------------------------*/
let a = [1,2,3];
//b = 1
//然后剩下的2,3以[2,3]的形式赋值给[c,d,e]
let [b,...[c,d,e]] = a;
b //1
c //2
d //3
e //undefined
作者:大黑兔
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利.