JavaScript -- Map数据结构

111 阅读1分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第16天,点击查看活动详情

什么是Map

Map和对象类似都是键值对的集合。

Map和对象的区别

对象一般用字符串当键。

Map可以用数字、字符串、布尔值、null、undefined、数组、对象、Set、Map等做键。 在这里插入图片描述

Map实例的属性和方法

set()

向Map实例中添加新成员,可连续添加。 如果新成员的键已存在,那么新成员将会覆盖以存在的键在这里插入图片描述

get()

通过Map实例的键,来访问其对应的值。

获取不存在的成员返回undefined。

在这里插入图片描述 在这里插入图片描述

has()

通过Map实例的键,来判断成员是否存在。

在这里插入图片描述

delete()

删除Map实例成员,删除实例中不存在的成员不报错。

在这里插入图片描述

clear()

清空Map实例成员。

在这里插入图片描述

forEach()

遍历Map实例成员,接收两个参数,第一个是一个回调,回调接收三个参数:value、key、Map。第二个参数是是this指向。

在这里插入图片描述

size属性

获取Map成员个数。

在这里插入图片描述

Map构造函数

二维数组

在这里插入图片描述

Set

Set必须体现出键和值。

在这里插入图片描述

Map

Map作为参数,传入构造函数,相当于Map实例的克隆

在这里插入图片描述

Map注意事项

Map对于重复键的判断基本遵循 ===,但在Map中NaN ===NaN。

Map的应用

根据文件类型调用对应的加载器

image.png

image.png 本文到此结束

如果大家还有什么其他想法,欢迎在评论区交流!