当前位置: 首页 > 工具软件 > 构造 > 使用案例 >

构造函数_Map构造函数

徐奇逸
2023-12-01

1.Map构造函数

  • 语法:new Map([iterable])

    • iterable->数据类型为一个数组—数组的每个元素为 length为2的数组(存储键值对),每个键值对都会添加到实例化对象中;

    • 举例说明

      • const map = new Map([[{name:111}, 111],[null,2]])
        console.log('结果', map)
        
      • 0: {Object => 111}
        key: {name: 111}
        value: 111
        1: {null => 2}
        key: null
        value: 2
        

2.map对象

  • 1.创建map对象

    • [1]空对象

      • const map = new Map()
        
    • [2]创建一个带有值的map对象

      • var map = new Map([[{ name: 111 }, 'tom'], ['age', 12], ['sex', '男']])
        console.log(11111111, map)
        
  • 2.使用set方法添加键值对

    • var map = new Map([[{ name: 111 }, 'tom']])
      map.set(111, 'chaochao')
      
  • 3.使用get方法获取某个键的值

    • var map = new Map([[{ name: 111 }, 'tom']])
      map.set(111, 'chaochao')
      console.log(11111111, map.get(111)) //chaochao
      
  • 4.使用size属性获取键值对的个数

    • var map = new Map([[{ name: 111 }, 'tom']])
            map.set(111, 'chaochao')
            console.log(11111111, map.size) //2
      
  • 5.使用hash方法判断该对象中是否存在某属性

    • var map = new Map([[{ name: 111 }, 'tom']])
      map.set(111, 'chaochao')
      console.log(11111111, map.has(111), map.has('111')) //全等比较 true false
      
  • 6.使用delete方法删除某个键值对

    • var map = new Map([[{ name: 111 }, 'tom']])
           map.set(111, 'chaochao')
           console.log(111, map) // size=2
           map.delete(111) // 删除成功返回值为true,删除失败,返回值为false
           console.log(222, map) // size=1
      
  • 7.使用clear方法清除所有键值对

    • var map = new Map([[{ name: 111 }, 'tom']])
          map.set(111, 'chaochao')
          console.log(111, map) // size=2
          map.clear()
          console.log(222, map) // size=0
      

2.map对象与js对象的异同点

  • 相同点
    • 都是键值对的集合;
  • 不同点
    • js对象会将键值全部转化为 字符串
    • map对象的键值可以是任意数据类型;
 类似资料: