ES6:11-Set集合
// 声明一个 set
let s = new Set();
console.log(s, typeof s);
let s2 = new Set([‘1’, ‘2’, ‘4’, ‘5’, ‘6’]);
console.log(s2);
// 元素个数
console.log(s2.size);
// 添加元素
s2.add(‘44’);
console.log(s2.size);
// 删除元素
s2.delete(‘5’);
// 检测
s2.has(‘6’);
console.log(s2.has(‘6’));
// 清空
// s2.clear();
// console.log(s2);
for (let v of s2) {
console.log(s2);
}
//交、并、补、差
let arr = [1, 2, 3, 4, 5, 6, 6, 7, 3, 8, 9];
// 数组去重
// let result=[…new Set(arr)];
// console.log(result);
// 交集
let arr2 = [4, 5, 6, 6];
// let result=[…new Set(arr)].filter(item=>{
// let s2=new Set(arr2);
// if(s2.has(item)){
// return true;
// }else{
// return false;
// }
// })
// 代码简化
// let result=[…new Set(arr)].filter(item=>new Set(arr2).has(item));
// console.log(result);
// 并集
// let union=[…new Set([…arr,…arr2])];
// console.log(union);
// 差集
let result = […new Set(arr)].filter(item => !(new Set(arr2).has(item)));
console.log(result);