Bootstrap

Map和Set数据结构

Map 和 Set 区别

共同点:可以存储不重复的值。

不同点:

(1)Map 是以 [key ,value] 的形式存储元素。Set 是以 [value ,value] 的形式存储元素。

(2)Map 只接收每个成员都是一个双元素的数组,例如:new Map([['key1', value1],['key2', value2]])Set 接收的参数是一个数组,例如: new Set([value,value]);

一、Map

Map 是一组键值对的结构,查询的时候通过 key 就可以查到相应的 value

1. Map的使用

const map = new Map([
      ['a', 111],
      ['b', 222]
  ]);

(1)size()属性返回 Map 结构的成员(一个键值对算一个)总数。

 console.log(map.size);  // 2  也就是['a', 111],['b', 222]

(2)set()方法设置键名key对应的键值为value,然后返回整个 Map 结构。如果key已经有值,则键值会被更新,否则就新生成该键。

 console.log(map.set('c',333));  
 console.log(map.size);  // 3  添加后为['a', 111],['b', 222],['c', 333]

(3)get() 方法读取key对应的键值,如果找不到key,返回undefined。

 console.log(map.get('c'));  // 333

(4)has() 方法返回一个布尔值,表示某个key是否在当前 Map 对象之中。

console.log(map.has('c'));  // true
console.log(map.has('e'));  // false

(5)delete 方法删除某个键,返回true。如果删除失败,返回false。

 console.log(map.
;