JavaScript---new Map()用法

new Map

在JavaScript中,Map 是一个构造函数,用于创建 Map 对象,它可以存储键值对集合。与普通的对象不同,Map 的键可以是任何类型的值,包括函数、对象或任意基本类型。

以下是如何创建和使用 Map 的一些基本操作:

创建 Map 对象

javascript 复制代码
let map = new Map();

设置键值对

使用 set() 方法添加键值对:

javascript 复制代码
map.set('key1', 'value1');
map.set('key2', 'value2');
map.set(123, 'value3');
map.set({}, 'value4');

获取值

使用 get() 方法根据键获取值:

javascript 复制代码
console.log(map.get('key1')); // 输出: value1
console.log(map.get(123));    // 输出: value3

检查键是否存在

使用 has() 方法检查键是否存在:

javascript 复制代码
console.log(map.has('key1')); // 输出: true
console.log(map.has('key5')); // 输出: false

键值对数量

使用 size 属性获取键值对的数量:

javascript 复制代码
console.log(map.size); // 输出: 4(如果之前的赋值都执行过的话)

删除键值对

使用 delete() 方法删除指定键的键值对:

javascript 复制代码
map.delete('key1'); // 删除 'key1'

清空所有键值对

使用 clear() 方法清空所有键值对:

javascript 复制代码
map.clear(); // 清空 map 中的所有键值对

迭代 Map

Map 对象可以使用 forEach() 方法进行迭代,也可以使用 for...of 循环迭代其键值对:

javascript 复制代码
map.forEach((value, key) => {
  console.log(`${key}: ${value}`);
});

// for...of 循环来迭代键值对
for (let [key, value] of map) {
  console.log(`${key}: ${value}`);
}

// 只迭代键
for (let key of map.keys()) {
  console.log(key);
}

// 只迭代值
for (let value of map.values()) {
  console.log(value);
}

Map 对象保持了键值对的插入顺序,这意味着在迭代时,键值对会按照插入的顺序返回。这是 Map 相对于对象字面量的一个重要特性,后者并不保证属性遍历的顺序。

相关推荐
ZYMFZ6 分钟前
Redis主从复制与哨兵集群
前端·git·github
lumi.9 分钟前
前端本地存储技术笔记:localStorage 与 sessionStorage 详解
前端·javascript·笔记
旧雨散尘13 分钟前
【react】初学react5-react脚手架搭建中的小众知识
前端·react.js·前端框架
炫饭第一名24 分钟前
🌍🌍🌍字节一面场景题:异步任务调度器
前端·javascript·面试
烛阴25 分钟前
Lua字符串的利刃:模式匹配的艺术与实践
前端·lua
艾莉丝努力练剑25 分钟前
【C++:继承和多态】多态加餐:面试常考——多态的常见问题11问
开发语言·c++·人工智能·面试·继承·c++进阶
奇舞精选25 分钟前
一文了解 Server-Sent Events (SSE):构建高效的服务器推送应用
前端
Skrrapper26 分钟前
【C++】C++11出来之后,到目前为止官方都做了些什么更新?
开发语言·c++
Yeats_Liao31 分钟前
Go Web 编程快速入门 11 - WebSocket实时通信:实时消息推送和双向通信
前端·后端·websocket·golang
纯爱掌门人37 分钟前
鸿蒙状态管理V2实战:从零构建MVVM架构的应用
前端·harmonyos