当前位置:首页 > JavaScript

map实现js

2026-03-13 22:17:13JavaScript

Map 实现(JavaScript)

在 JavaScript 中,Map 是一种键值对集合,允许任何类型的值(包括对象)作为键,并保持插入顺序。以下是实现和使用 Map 的常见方法。

创建 Map

使用 new Map() 构造函数创建一个空的 Map,或通过传入一个键值对数组初始化。

const map = new Map();
const initializedMap = new Map([
  ['key1', 'value1'],
  ['key2', 'value2']
]);

添加键值对

使用 set(key, value) 方法向 Map 中添加或更新键值对。

map.set('name', 'Alice');
map.set(42, 'The Answer');

获取值

通过 get(key) 方法获取指定键对应的值。若键不存在,返回 undefined

map实现js

console.log(map.get('name')); // 输出: 'Alice'
console.log(map.get('nonexistent')); // 输出: undefined

检查键是否存在

使用 has(key) 方法检查 Map 中是否存在某个键。

console.log(map.has('name')); // 输出: true

删除键值对

通过 delete(key) 方法移除指定键的键值对。返回 true 表示删除成功,false 表示键不存在。

map实现js

map.delete('name');

清空 Map

调用 clear() 方法移除所有键值对。

map.clear();

遍历 Map

Map 支持多种遍历方式:

  • keys():返回键的迭代器。
  • values():返回值的迭代器。
  • entries():返回键值对的迭代器(默认迭代行为)。
  • forEach(callback):通过回调函数遍历。
for (const [key, value] of map) {
  console.log(key, value);
}

map.forEach((value, key) => {
  console.log(key, value);
});

获取大小

通过 size 属性获取 Map 中键值对的数量。

console.log(map.size);

与 Object 的区别

  1. 键的类型Map 的键可以是任意类型(包括对象),而 Object 的键只能是字符串或 Symbol。
  2. 顺序Map 保持插入顺序,Object 的键顺序不固定。
  3. 性能:频繁增删键值对时,Map 性能更优。
  4. 内置方法Map 提供如 sizeclear() 等专用方法。

示例代码

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

console.log(map.get('a')); // 1
console.log(map.size); // 2

map.delete('a');
console.log(map.has('a')); // false

标签: mapjs
分享给朋友:

相关文章

js实现图片放大缩小

js实现图片放大缩小

实现图片放大缩小的基础方法 使用CSS的transform: scale()属性可以快速实现图片的放大缩小效果。通过JavaScript动态修改该属性值: const img = document.…

js实现验证

js实现验证

验证表单输入 使用JavaScript验证表单输入是常见的需求。可以通过监听表单提交事件,检查输入字段是否符合要求。 document.getElementById('myForm').addEve…

js实现自举

js实现自举

实现 JavaScript 自举的方法 JavaScript 自举(Bootstrap)通常指通过 JavaScript 动态加载自身或依赖的脚本,实现运行时环境的初始化或扩展。以下是几种常见实现方式…

js钟表实现

js钟表实现

实现JavaScript钟表的基本方法 创建一个简单的JavaScript钟表可以通过以下步骤完成,涵盖数字和模拟两种形式。 数字钟表实现 HTML结构只需一个显示时间的容器: <div i…

链表实现js

链表实现js

链表的基本概念 链表是一种线性数据结构,由一系列节点组成,每个节点包含数据和一个指向下一个节点的指针(单向链表)或两个指针(双向链表)。与数组不同,链表在内存中非连续存储,插入和删除操作更高效,但随机…

js实现交换

js实现交换

交换变量的方法 在JavaScript中,交换两个变量的值有多种方法。以下是常见的几种实现方式: 使用临时变量 通过引入一个临时变量来存储其中一个变量的值,实现交换: let a = 1; le…