什么是字典
字典:字典存储的是键值对,主要的特征是一一对应,字典中的 key 是不能重复且无序的,value 可以重复。
ES6 中的 Map 就是一个字典结构。
字典常用的方法
has(key) 判断字典中是否存在这个 keyset(key, value) 在字典中添加键值对remove(key) 从字典中删除 keyget(key) 获取指定 key 的 value 如果没有返回 undefinedkeys() 获取所有的 keysvalues() 获取所有的 valuessize() 获取字典的键值对的个数clear() 清除字典的所有数据
ES6 实现字典结构
字典结构的封装
/** * 字典数据结构 * 特点: * 1. 字典主要存储的是键值对,主要的特点就是对值的一一对应 * 2. 字典的key是不能重复的并且是无序的,但是value可以有重复的 * * @class Map_ */class Map_ { constructor() { this.map = {}; }}复制代码
has(key) 方法的实现
// has(key) 判断字典中是否存在这个key has(key) { return this.map.hasOwnProperty(key); }复制代码
set(key, value) 方法的实现
// set(key, value) 在字典中添加键值对 set(key, value) { this.map[key] = value; }复制代码
remove(key) 方法的实现
// remove(key) 从字典中删除key remove(key) { if (!this.has(key)) return false; delete this.map[key]; }复制代码
get(key) 方法的实现
// get(key) 获取指定key的value 如果没有返回undefined get(key) { return