Map数据结构简单的学习

2018-11-12  本文已影响0人  爱跳的兔子

什么是map数据结构?

简单的用法

const a = new Map()
const b = ['a']
a.set(b,111)      // 设置一个键
a.get(b)      //111  获取值

a.has(b)     //true  查询是否含有
a.delete(b) //true  删除
a.has(b)     //true
const map = new Map([
        ['a', '兔子'],
        ['b', '小狗']
])
map.get('a')   //兔子
map.get('b')   //小狗
const items = [
        ['a', '兔子'],
        ['b', '小狗']
]
const map = new Map()
items.map(([key, value]) =>{
      map.set(key, value)
})

a.get('asdf')    //undefined
const map = new Map()
map.set(['a'], 111)
map.get(['a'])    // undefined
const map = new Map()
const a1 = ['a']
const a2 = ['a']

map.set(a1,111)
.set(a2,222)

map.get(a1)    //111
map.get(a2)    //222
a1 === a2  //false

由上面就可以看出,map在设计的时候键是与内存地址绑定的,是不是同一个键是看内存地址是否相同,这样做到好处,是我们在扩展别人的库或者方法的时候不用担心用了已经存在的属性而冲突

内存地址

['a'] === ['a']    //false

const a1 = ['a']
const a2 = ['a']
a1 === a2     //false

通过上图我们不难看出内存地址具体是怎么不同的。一些关于map数据结构更详细的文档,还请大家去看阮老师的es6文档。

上一篇下一篇

猜你喜欢

热点阅读