Js 的对象(Object),本质上是键值对的集合,但是传统上只能用字符串当作键。
ES6 提供了 Map 数据结构。它类似于对象,也是键值对的集合,但是“键”的范围不限于字符串。各种类型的值(包括对象)都可以当作键
Map实例的属性和操作方法:
- size:返回成员总数
- set(key, value):添加新的键值
- get(key):读取键对应的值
- has(key):是否有某个键
- delete(key):删除某个键
- clear():清空
Map实例的遍历方法:
- keys():返回键名的遍历器。
- values():返回键值的遍历器。
- entries():返回键值对的遍历器。
- forEach():遍历 Map 的所有成员
// 数组根据name值去重; const map = new Map() accessedRoutes.forEach((item) => { if (!map.has(item['name'])) { map.set(item['name'], item) } }) console.log([...map.values()]);