js的Map

时间:2024-01-26 08:14:17

      JavaScript中的Map是一种内置的数据结构,它允许存储键值对(key-value pairs)。与数组不同,Map是基于键值对进行索引的,这意味着您可以快速访问和操作特定的键值对。

      以下是Map数据结构的一些关键特性:

      

  1. 键的唯一性:在Map中,每个键都必须是唯一的。如果尝试添加一个已存在的键,新的值将覆盖旧的值。
  2. 值的任何类型:Map的值可以是JavaScript中的任何类型,包括数字、字符串、对象、数组等。
  3. 键值对的迭代:Map提供了迭代其键值对的方法,例如map.keys()返回一个新的迭代器对象,包含Map对象的每个键。类似地,map.values()返回包含每个值的迭代器,而map.entries()返回一个包含每个[key, value]对的迭代器。
  4. Map的大小:可以通过map.size属性来获取Map中存储的键值对的数量。

   5.删除元素:可以使用map.delete(key)方法删除特定键值对,或者使用map.clear()方法清空整个Map。

   6.检查元素:可以使用map.has(key)方法检查Map中是否存在特定的键值对。

    

/ 创建一个新的Map  
let map = new Map();  
// 添加键值对  
map.set('name', 'John');  
map.set('age', 30);  
map.set('city', 'New York');  

/ 访问和输出值  
console.log(map.get('name'));  // 输出: John  
console.log(map.get('age'));   // 输出: 30  
console.log(map.get('city'));  // 输出: New York 

/ 检查Map中是否存在特定的键  
console.log(map.has('name'));  // 输出: true  
console.log(map.has('country')); // 输出: false  

// 删除元素  
map.delete('age');  
console.log(map.get('age'));  // 输出: undefined
// 遍历Map的键和值  
for (let [key, value] of map) {  
  console.log(`${key}: ${value}`);  
}

Map数据结构在JavaScript中非常有用,特别是当您需要存储和操作键值对时。由于其基于键的索引和快速查找的特性,它通常比使用对象或数组更高效。