JavaScript -- Map数据结构
文章目录
- 什么是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数据结构相关推荐
- 【ES6】JS的Set和Map数据结构
[ES6]JS的Set和Map数据结构 一.Set 1.基本用法 2.4种操作方法 3.4种遍历方法 4.Set的应用 1)Set转化为数组 2)去除数组的重复元素 3)实现并集(Union).交集( ...
- Javascript的数据结构与算法(一)
1数组 1.1方法列表 数组的常用方法如下: concat: 链接两个或者更多数据,并返回结果. every: 对数组中的每一项运行给定的函数,如果该函数对每一项都返回true,则返回true. fi ...
- ES6 Map数据结构
Map JavaScript 的对象(Object),本质上是键值对的集合(Hash 结构),但是传统上只能用字符串当作键.这给它的使用带来了很大的限制. ES6 提供了 Map 数据结构.它类似于对 ...
- ES6之路第九篇:Set和Map数据结构
set 基本用法 ES6 提供了新的数据结构 Set.它类似于数组,但是成员的值都是唯一的,没有重复的值. Set 本身是一个构造函数,用来生成 Set 数据结构. 1 const s = new S ...
- es6--set数组去重,Map数据结构
set结构不会添加重复的值. Array.from方法可以将Set结构转为数组,这就提供了去除数组重复成员的方法 function dedupe(array){ return Array.from(n ...
- “睡服”面试官系列第七篇之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 ...
- es6 获取对象的所有值_前端开发必备 - ES6 新特性之 Set和Map数据结构
往期回顾: 前端开发必备 - ES6 新特性之 let 和 const 命令 前端开发必备 - ES6 新特性之 变量的解构赋值 前端开发必备 - ES6 新特性之 字符串的拓展 前端开发必备 - E ...
- ES6 (十三)Set 和 Map 数据结构、WeakSet 和 WeakMap、WeakRef、FinalizationRegistry
ES6 (十三)Set 和 Map 数据结构.WeakSet 和 WeakMap.WeakRef.FinalizationRegistry 文章目录 ES6 (十三)Set 和 Map 数据结构.We ...
- Set 和 Map 数据结构
1.Set ES6 提供了新的数据结构 Set.它类似于数组,但是成员的值都是唯一的,没有重复的值. Set 本身是一个构造函数,用来生成 Set 数据结构. const s = new Set(); ...
- JavaScript Map 和 Set
结论 Map:存放键值对,区别于 Object,键可以是任何值. Set:存放不重复的值 Map 存储键值对,读取时与插入顺序一致. var map = new Map([[1, "1&qu ...
最新文章
- 在中国使用pip更新或安装库的配置
- new Grammar in 740 - internal table filter
- python网络爬虫面试题,搞定这套Python爬虫面试题(面试会so easy)
- CSS具有最高优先级 !important
- ajax表单图片,js中使用ajax上传一个带有图片的表单数据
- [zabbix][问题解决]监控项 Received value [] is not suitable for value type [Numeric(float)]
- 记:通过Swagger-ui 生成json
- Atitit hibernate3 hinernate4 hibernate5新特性attilax总结
- 关于微信和微信小程序
- vivo nex免Root使用空调狗
- Java 定时任务@Scheduled使用
- Kylo 之 spark-job-profiler 源码阅读
- jquery ajax 回调函数里面再执行ajax函数,jQuery AJAX 和其回调函数
- 编写WPF应用程序实现以下功能:定义一个RandomHelp类,该类提供一个静态的GetIntRandomNumber方法,一个静态的GetDoubleRandomNumber方法。
- VirtualBox运行出现“0x00000000指令引用的0x00000000内存。该内存不能为written”
- Appium+python自动化(二十一)- 让猴子按你指令大闹手机,让我们都成为耍猴高手(超详解)...
- android怎么删除插件,Android手机如何添加删除桌面图标和插件
- Echarts Y轴遮挡解决方案
- 20000字干货,数据分析 Pandas 75个高频操作都在这儿了!
- protocol buffer使用中的问题This is supposed to be overridden by subclasses