什么是字典
字典:字典存储的是键值对,主要的特征是一一对应,字典中的 key 是不能重复且无序的,value 可以重复。 ES6 中的 Map 就是一个字典结构。
字典常用的方法
- has(key) 判断字典中是否存在这个 key
- set(key, value) 在字典中添加键值对
- remove(key) 从字典中删除 key
- get(key) 获取指定 key 的 value 如果没有返回 undefined
- keys() 获取所有的 keys
- values() 获取所有的 values
- size() 获取字典的键值对的个数
- clear() 清除字典的所有数据
ES6 实现字典结构
class Map {
constructor(){
this.map={}
}
has(key){
return this.map.hasOwnProperty(key)
}
set(key,val){
this.map[key]=val
}
remove(key){
if (!this.has(key)) return false
delete this.map[key]
}
get(key){
return this.has(key)?this.map[key]:undefined
}
keys(){
return Object.keys(this.map)
}
values(){
return Object.values(this.map)
}
size(){
return this.keys().length
}
clear(){
this.map={}
}
}
let map=new Map()
map.set("h",554545)
map.set("123",6565)
console.log(map.get("h"));
console.log(map.size());