展开运算符(...)合并数组 、 合并对象

1、展开运算符(...)合并数组 、 合并对象

// concat 
 let a1 = [1,2,3];
 let a2 = [4,5,6,1,2,3];
 console.log([...a1,...a2]);//[1, 2, 3, 4, 5,6, 1, 2, 3]

4、(set + map) set 和map 是es6中新的数据类型 不能放重复的

let set = new Set([1,2,3,3,2,1]);
console.log(set); // 

set.add(4);
// set.clear()// 清除
// set.delete(); // 删除某一项
// Object.entries  Object.keys   Object.values
    console.log(set.entries());//{ [ 1, 1 ], [ 2, 2 ], [ 3, 3 ], [ 4, 4 ] }
    console.log(set.keys());//{ 1, 2, 3, 4 }
    console.log(set.values());//{ 1, 2, 3, 4 }
    set.forEach(item=>{//set方法只有forEach方法
         console.log(item);
    })

数组的交集 和 差集

// 数组的交集  和 差集 has来实现  
// union
let a1 = [1,2,3];
let a2 = [4,5,6,1,2,3];

let s1 = new Set([...a1]); // [1,2,3]
let s2 = new Set([...a2]); // 
let a3 = [...s2].filter((item=>{ // 返回的是一个新的数组
   return  !s1.has(item); // map是映射一个新的数组 但是不会比以前的项少 
}));
console.log(a3);

你可能感兴趣的:(展开运算符(...)合并数组 、 合并对象)