集合的概念
一种无序且唯一的数据结构
Es6当中有集合,名为Set
集合的常用操作:去重,判断某元素是否在集合中,求交集
//数组去重
const array=[1,1,2,2];
const newarr=[... new Set(array)];
//判断是否存在某个元素
const set2= new Set(array);
const has=set.has(3);
//求交集
const set3=new Set([2,3]);
const set4=new Set([...set2].filter(item=>set3.has(item)));
求数组的交集
var intersection = function(nums1, nums2) {
return [...new Set(nums1)].filter(item=>nums2.includes(item))
};
Set常用操作
let mySet=new Set();
//增加集合元素
mySet.add(5)
//删除集合元素
mySet.delete(5)
//判断某个元素是否存在
mySet.has(5)
//集合元素的个数
mySet.size
//遍历集合
for(let item of mySet){ }
//求集合交集
let insert=new Set([...mySet].filter(x=>{youSet.has(x)});
//求差集
let diff=new Set([...mySet].filter(x=>{!youSet.has(x)}))