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 相对于对象字面量的一个重要特性,后者并不保证属性遍历的顺序。

相关推荐
Nueuis1 小时前
微信小程序前端面经
前端·微信小程序·小程序
_r0bin_3 小时前
前端面试准备-7
开发语言·前端·javascript·fetch·跨域·class
IT瘾君3 小时前
JavaWeb:前端工程化-Vue
前端·javascript·vue.js
zhang98800003 小时前
JavaScript 核心原理深度解析-不停留于表面的VUE等的使用!
开发语言·javascript·vue.js
potender3 小时前
前端框架Vue
前端·vue.js·前端框架
站在风口的猪11084 小时前
《前端面试题:CSS预处理器(Sass、Less等)》
前端·css·html·less·css3·sass·html5
程序员的世界你不懂4 小时前
(9)-Fiddler抓包-Fiddler如何设置捕获Https会话
前端·https·fiddler
MoFe15 小时前
【.net core】天地图坐标转换为高德地图坐标(WGS84 坐标转 GCJ02 坐标)
java·前端·.netcore
去旅行、在路上5 小时前
chrome使用手机调试触屏web
前端·chrome
Fanxt_Ja5 小时前
【JVM】三色标记法原理
java·开发语言·jvm·算法