Set类似于数组,不可以有重复的值。
    声明Set

    1. let set = new Set()
    2. set.add(1,2,3)
    3. console.log(set) //{1,2,3}

    判断元素是否存在

    1. let set = new Set(['q','w'])
    2. console.log(set.has('q')) // tree

    删除 delete()
    查看 values()
    数量 size()
    判断 has()

    set类型转换成数组

    1. let set = new Set(['qihuanran', 'wangqi'])
    2. console.log(Array.from(set)) //[]
    3. console.log([...set]) //[]

    去重

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

    过滤

    1. let hd = new Set('12312312356456767')
    2. hd = new Set([...hd].filter(item => item<5))
    3. console.log(hd)

    并集/叉/交

    1. let a = new Set([1,2,3,4,5,6])
    2. let b = new Set([1,2,3,5,9,10])
    3. // 并集,去重
    4. console.log(new Set([...a,...b]))
    5. //叉集,不同的
    6. console.log(new let([...a].filter(function(item){
    7. return !b.has(item)
    8. })))
    9. // 交集 共同拥有
    10. console.log(new let([...a].filter(function(item){
    11. return b.has(item)
    12. })))



    WeakSet
    跟set一样不能有重复的,并且必须为引用类型,方法同set