Set类似于数组,不可以有重复的值。
声明Set
let set = new Set()set.add(1,2,3)console.log(set) //{1,2,3}
判断元素是否存在
let set = new Set(['q','w'])console.log(set.has('q')) // tree
删除 delete()
查看 values()
数量 size()
判断 has()
set类型转换成数组
let set = new Set(['qihuanran', 'wangqi'])console.log(Array.from(set)) //[]console.log([...set]) //[]
去重
let set = [1,2,3,4,3,2,1]console.log(...new Set(set))
过滤
let hd = new Set('12312312356456767')hd = new Set([...hd].filter(item => item<5))console.log(hd)
并集/叉/交
let a = new Set([1,2,3,4,5,6])let b = new Set([1,2,3,5,9,10])// 并集,去重console.log(new Set([...a,...b]))//叉集,不同的console.log(new let([...a].filter(function(item){return !b.has(item)})))// 交集 共同拥有console.log(new let([...a].filter(function(item){return b.has(item)})))
WeakSet
跟set一样不能有重复的,并且必须为引用类型,方法同set
