Map是类似Object的一种键值对集合,区别在于Map的键不仅限于是字符串,其他各种类型的值包括对象都可以成为Map的键
Set也是ES6新增的对象,Set是一组key的集合,但不存储value, 而且key不重复,可自动排重
add(value):添加某个值,返回Set结构本身。
delete(value):删除某个值,返回一个布尔值,表示删除是否成功。
has(value):返回一个布尔值,表示该值是否为Set的成员。
clear():清除所有成员,没有返回值。
原文链接: https://blog.csdn.net/hot_cool/java/article/details/83685046
对象类似于数组,且成员的值都是唯一的const arr = [1, 2, 3, 4, 5, 5, 4, 3, 2, 1]
const set = new Set()
arr.forEach(item =>set.add(item))
console.log(set) // 1, 2, 3, 4, 5
// 数组快速去重
console.log([...new Set(arr)])
Map 对象是键值对集合,和 JSON 对象类似,但是 key 不仅可以是字符串还可以是对象
var map = new Map()
var obj = { name: '小缘', age: 14 }
map.set(obj, '小缘喵')
map.get(obj) // 小缘喵
map.has(obj) // true
map.delete(obj) // true
map.has(obj) // false
(一)Map 数据结构1.Map 数据结构,类似于对象,键值对的集合, 所有的数据都是唯一的,不会重复,每条数据都需要放在一个数组中,它本身就是一个构造函数
size 数据的长度
set() 添加一个数据
delete() 删除一条数据
get () 获取一条数据
has() 查找某条数据,返回一个布尔值
clear() 删除所有数据
参考资料: https://www.51zxw.com/