汇合
原文链接:https://note.noxussj.top/?source=sifo
什么是汇合?
汇合是一种无序且惟一的数据结构,其中的惟一是指汇合中的元素。在 ES6 中新增了一种数据结构 Set 就是汇合。
实现性能
- new() 实例化一个汇合
- add() 增加元素
- delete() 删除元素
- has() 判断是否存在元素
- size() 获取汇合大小
利用场景
- 去重
- 判断某元素是否在汇合中
- 求两个汇合的交加
根底案例
罕用操作
const set = new Set()
// 增加 set 元素
set.add(1)
set.add(5)
set.add(5)
set.add('some text')
const o = {a: 1}
set.add(o)
set.add({a: 1})
// 判断元素是否存在 set 中
const has = set.has('some text') // true
// 删除 set 元素
set.delete(5)
// 迭代
for (const item of set) {console.log(item)
}
利用场景
// 去重
const arr = [1, 1, 2, 2]
const arr2 = [...new Set(arr)] // [1, 2]
// 判断元素是否在汇合中
const set = new Set(arr)
const has = set.has(3) // false
// 求交加
const set2 = new Set([2, 3])
const set3 = [...set].filter((x) => set2.has(x)) // [2]
原文链接:https://note.noxussj.top/?source=sifo