ES6:Set和Map
Set
Set:类似数组,但是成员的值都是唯一的,没有重复。
Set本身是一个构造函数,用来生成Set数据结构。
他包含的方法:
add: 添加某个值,返回Set结构本身。
delete: 删除某个值,返回一个布尔值,表示是否成功;
has(value): 返回布尔值,表示该值是否为Set的成员;
clear():清除所有成员,没有返回值
遍历操作
keys():返回键名的遍历器
values(): 返回健值对的遍历器
entries():返回键值对的遍历器
forEach(): 每个成员
WeakSet
他与Set类似,但是也有区别
1.weakSet的成员只能是对象,不能是其他类型的值
2.weakSet对象都是弱引用。如果其他对象不再引用该对象,那么垃圾回收机制会自动回收该对象所占的内存,所以WeakSet是不可遍历的。
WeakSet结构的三个方法
add
delete
has
WeakSet的一个用处是储存DOM节点,而不用担心这些节点会从文档中移除时,会引发内存泄露。
Map
他是键值对的集合(Hash结构)。他与Object结构的区别是:Object是一种“字符串-值”的对应,Map是“值-值”的对应。所以当需要“键值对”这样的数据结构时,Map比Object更合适。
他的方法:
set(key, value)
get(key)
has(key)
delete(key)
clear()
遍历方法
keys()
values()
entries()
forEach()
WeakMap
WeakMap跟Map结构基本类似,区别是只接受对象(null除外)作为键名,不接受其他类型的值作为键名,而且键名所指向的对象,不计入垃圾回收机制。
ES6:Set和Map相关推荐
- 第十七节:ES6新增的Map和WeakMap 又是什么东西?
上节介绍了Set和WeakSet,这节咱就讲Map和WeakMap是什么?当然,两者之前并没什么必然的联系,仅仅是用法类似. 什么是Map 介绍什么是Map,就不得不说起Object对象,我们都知道O ...
- 【ES6(2015)】Map
文章目录 1. 基本语法 2. 遍历方式 3. WeekMap ES6 提供了 Map 数据结构.它类似于对象,也是键值对的集合,但是"键"的范围不限于字符串,各种类型的值(包括对 ...
- es6中的map方法
es6中的map方法 一.简单的说明 map是一种数据结构,类似于对象,但是里面的键的值可以是各种类型,包括对象也行 //声明Maplet m = new Map();m.set('name','zh ...
- 【ES6基础】Map与WeakMap
开篇 ES6里除了增加了Set(集合)类型外(笔者在这篇文章<Set与WeakSet>有过介绍),今天的这篇文章笔者将继续介绍ES6引入的新类型--Map(映射类型)和其对应的弱类型Wea ...
- Es6 set和map
介绍 Set 和 Map 主要的应用场景在于 数据重组 和 数据储存. Set 是一种叫做集合的数据结构,Map 是一种叫做字典的数据结构. ES6 新增的一种新的数据结构,类似于数组,但成员是唯一且 ...
- ES6中的Map和Set详解
概览 本文主要介绍了 ES6新增的Set和Map 数据结构,对其特性和常见用法进行了梳理 一. Set Set是ES6中新增的数据结构,它类似于数组,但是Set数据中的元素都是唯一的,没有重复值的; ...
- ES6 Set 和 Map 遍历操作
作为 ES2015 的新增特性,Set 和 Map 对象大家应该很熟悉了,例如 Set 在数组去重等场景中经常会用到: function unique(array = []) {return Arra ...
- ES6 -Set 和 Map 数据结构
一.set 1.set数据结构:类似数组,但是里面不能有重复值 2.set语法, new Set([]) let set=new Set([1,2,1]); console.log(set);// { ...
- 初探ES6中的Map和WeakMap
Map 对象保存键值对.任何值(对象或者原始值) 都可以作为一个键或一个值. 使用映射对象 let myMap=new Map(); let keyObj={},keyfunc=function(){ ...
- 【ES6】Set Map数据结构、Iterator遍历器
Set() Set类似于数组,但是成员的值都是唯一的,没有重复的值.Set 本身是一个构造函数,用来生成 Set 数据结构. const s = new Set(); let arr = [2, 3, ...
最新文章
- 基于TransformerFusion的单目场景重构
- 第十二周项目二-Time类中的运算符重载
- tftp ubuntu安装
- 了解 C# foreach 内部语句和使用 yield 实现的自定义迭代器
- aop的实现原理_非Spring管理Bean如何添加AOP呢?
- Python机器学习:PCA与梯度上升:06scikit中的PCA
- Rust : 泛型与trait限定
- python数字转换成中文大写_Python转换数字到中文大写格式
- vSphere ESXI 7.0部署详细安装指南
- python400集 高淇主讲pdf_高淇python400集全套视频教程 相关实例(示例源码)下载 - 好例子网...
- Ubuntu16.04安装谷歌浏览器
- APP自动化测试-3. Appium元素定位与等待
- php1蛋白质带电情况,拿到一个蛋白以后,首先需要对蛋白进行全面的了解,所谓知彼知己方能百战不殆:...
- Python安装包时遇到There was a problem confirming the ssl certificate…的解决办法
- 【数据结构—图】拓扑Topo排序
- 逆向笔记2(数据宽度_逻辑运算)
- App测试中有哪些常见的性能测试指标?出具App测试报告的软件测试机构推荐
- AJ1变色龙79.9/阿迪39.9/二裂酵母套盒39.9/有情洗发水9.9/
- 数据结构1800关于图的代码精选(一)
- 今天自制的NTP服务器正式部署在生产环境了,做个简单的总结记录一下