美文网首页js css html
Map函数的使用

Map函数的使用

作者: 扶得一人醉如苏沐晨 | 来源:发表于2023-03-01 09:12 被阅读0次

一、对象的方式来存储键值对缺点就是

1.1、键名限制

键名只能是字符串或者符号,这就给它的使用带来很大的限制

1.2、获取属性的数量不便

如果想知道对象中存了多少个属性,就必须先拿到所有的键名,然后通过求数组的长度才能知道对象中有多少个属性。

1.3、键名冲突

键名容易跟原型上的名称冲突。

二、map的创建

2.1、创建一个没有任何内容的 map 集合

const map = new Map()

2.2、创建一个有初始内容的 map 集合

传递一个数组,数组中又包含着多个子数组,子数组中元素个数始终为2,第一个元素为键名,第二个元素为值。

const map = new Map([['a', 1], ['b', 2], ['c', 3]])

三、map的方法

3.1、set()

如果键不存在,则添加一项
如果键存在,则修改它的值
如果键值都是一个空对象{},则不会被覆盖(对象是引用值,它们的地址不同,所以不会覆盖)

     const map = new Map()
     map.set('a',1)

3.2、get方法

get(键):根据一个键,得到一个值
如果传入不存在的值,则返回undifined

      const map = new Map()
      map.set('a', 1)
      map.get('a') // 1

3.3、has(键):判断某个键是否存在

返回值 布尔 有返回true,没有返回false

      const map = new Map()
      map.set('a', 1)
      map.has('a') //true

3.4、delete(键)

删除指定的键,成功返回true,失败返回false

      const map = new Map()
      map.set('a', 1)
      map.delete('a') //true

3.5、clear()

清空 map

      const map = new Map()
      map.set('a', 1)
      map.clear() //true

四、属性

4.1、size

获取map中的属性数量

      const map = new Map()
      map.set('a', 1)
      map.size() //1

五、常用

5.1、将map对象的value转成一个数组

      const map = new Map()
      map.set('a', 1)
      map.set('b', 2)
      let arr = []
      for (let [key, value] of map) {
        console.log(key, value);
        arr.push(value)
      }

map使用forEach

      const map = new Map()
      map.set('a', 1)
      map.set('b', 2)
      map.forEach((value, key, map) => {
        console.log(value, key, map);
      })

相关文章

网友评论

    本文标题:Map函数的使用

    本文链接:https://www.haomeiwen.com/subject/gfdlldtx.html