一见如故
- Set、Map都有has(),delete(),clear(),size,keys(),values(),entries()。Map中有set(),get()方法;Set中有add()方法
- Set是加强版的数组(其中的项不能重复),常用来做去重、取交集、取并集
- Map是加强版的对象(key没有类型限制,而对象中的key只能是字符创或者symbol),常用来做配置表
用Set做去重、取交集、取并集
// 数组、字符串去重
new Set(...arr)
// 两个Set取交集
[...set].filter(item => {
return set2.has(item)
})
// 两个Set取并集
[...set1, ...set2]
Set与数组之间的转化
let set = new Set(arr)
let arr = Array.from(set)
let arr = [...set]
Map的初始化
// 方法一
let map = new Map([
['a', 1],
['b', 2],
['c', 3],
])
// 方法二
let map = new Map()
map.set('name', 'jim')