文章目录

  • 什么是Map
  • Map和对象的区别
  • Map实例的属性和方法
    • set()
    • get()
    • has()
    • delete()
    • clear()
    • forEach()
    • size属性
  • Map构造函数
    • 二维数组
    • Set
    • Map
  • Map注意事项
  • Map的应用
    • 操作DOM

什么是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的应用

操作DOM

 <p>1</p><p>2</p><script>const [p1,p2] = document.querySelectorAll('p');const m = new Map([[p1,'red'],[p2,'blue']]);m.forEach((color, elem) => {elem.style.color = color})</script>

JavaScript -- Map数据结构相关推荐

  1. 【ES6】JS的Set和Map数据结构

    [ES6]JS的Set和Map数据结构 一.Set 1.基本用法 2.4种操作方法 3.4种遍历方法 4.Set的应用 1)Set转化为数组 2)去除数组的重复元素 3)实现并集(Union).交集( ...

  2. Javascript的数据结构与算法(一)

    1数组 1.1方法列表 数组的常用方法如下: concat: 链接两个或者更多数据,并返回结果. every: 对数组中的每一项运行给定的函数,如果该函数对每一项都返回true,则返回true. fi ...

  3. ES6 Map数据结构

    Map JavaScript 的对象(Object),本质上是键值对的集合(Hash 结构),但是传统上只能用字符串当作键.这给它的使用带来了很大的限制. ES6 提供了 Map 数据结构.它类似于对 ...

  4. ES6之路第九篇:Set和Map数据结构

    set 基本用法 ES6 提供了新的数据结构 Set.它类似于数组,但是成员的值都是唯一的,没有重复的值. Set 本身是一个构造函数,用来生成 Set 数据结构. 1 const s = new S ...

  5. es6--set数组去重,Map数据结构

    set结构不会添加重复的值. Array.from方法可以将Set结构转为数组,这就提供了去除数组重复成员的方法 function dedupe(array){ return Array.from(n ...

  6. “睡服”面试官系列第七篇之map数据结构(建议收藏学习)

    目录 1map 1.1含义和基本用法 1.2实例的属性和操作方法 1.2.1size属性 1.2.2set(key, value) 1.2.3get(key) 1.2.4has(key) 1.2.5d ...

  7. es6 获取对象的所有值_前端开发必备 - ES6 新特性之 Set和Map数据结构

    往期回顾: 前端开发必备 - ES6 新特性之 let 和 const 命令 前端开发必备 - ES6 新特性之 变量的解构赋值 前端开发必备 - ES6 新特性之 字符串的拓展 前端开发必备 - E ...

  8. ES6 (十三)Set 和 Map 数据结构、WeakSet 和 WeakMap、WeakRef、FinalizationRegistry

    ES6 (十三)Set 和 Map 数据结构.WeakSet 和 WeakMap.WeakRef.FinalizationRegistry 文章目录 ES6 (十三)Set 和 Map 数据结构.We ...

  9. Set 和 Map 数据结构

    1.Set ES6 提供了新的数据结构 Set.它类似于数组,但是成员的值都是唯一的,没有重复的值. Set 本身是一个构造函数,用来生成 Set 数据结构. const s = new Set(); ...

  10. JavaScript Map 和 Set

    结论 Map:存放键值对,区别于 Object,键可以是任何值. Set:存放不重复的值 Map 存储键值对,读取时与插入顺序一致. var map = new Map([[1, "1&qu ...

最新文章

  1. 在中国使用pip更新或安装库的配置
  2. new Grammar in 740 - internal table filter
  3. python网络爬虫面试题,搞定这套Python爬虫面试题(面试会so easy)
  4. CSS具有最高优先级 !important
  5. ajax表单图片,js中使用ajax上传一个带有图片的表单数据
  6. [zabbix][问题解决]监控项 Received value [] is not suitable for value type [Numeric(float)]
  7. 记:通过Swagger-ui 生成json
  8. Atitit hibernate3 hinernate4 hibernate5新特性attilax总结
  9. 关于微信和微信小程序
  10. vivo nex免Root使用空调狗
  11. Java 定时任务@Scheduled使用
  12. Kylo 之 spark-job-profiler 源码阅读
  13. jquery ajax 回调函数里面再执行ajax函数,jQuery AJAX 和其回调函数
  14. 编写WPF应用程序实现以下功能:定义一个RandomHelp类,该类提供一个静态的GetIntRandomNumber方法,一个静态的GetDoubleRandomNumber方法。
  15. VirtualBox运行出现“0x00000000指令引用的0x00000000内存。该内存不能为written”
  16. Appium+python自动化(二十一)- 让猴子按你指令大闹手机,让我们都成为耍猴高手(超详解)...
  17. android怎么删除插件,Android手机如何添加删除桌面图标和插件
  18. Echarts Y轴遮挡解决方案
  19. 20000字干货,数据分析 Pandas 75个高频操作都在这儿了!
  20. protocol buffer使用中的问题This is supposed to be overridden by subclasses

热门文章

  1. 如何把 Mac 中的文件拷贝到NTFS硬盘?
  2. php模拟QQ登录获得skey码,PHP模拟QQ网页版授权登陆
  3. 如何写好一篇技术型文档?
  4. 计算机一级如何添加对角线,如何在表格中添加对角线
  5. android关于无法debug
  6. Linux下显示IP地理位置信息的小工具-nali
  7. python 入门区块链
  8. java的测试岗位_JAVA测试岗位职责
  9. 数据分析师的就业薪资
  10. Java中new Date插入mysql数据库,数据库时间多一秒问题