es6-set-map数据结构
Set的用法
set的key一定是字符串
{
let list=new Set(); list.add(5);//向set中增加值要用add() list.add(6); console.log('size',list.size);//set的长度要用size
}
结果为size 2
还有一种声明方法,在set初始化时就定义值
{ let arr=[1,2,3,4,5];
let list=new Set(arr);
console.log('size',list.size); }
结果为size 5
size中的数据是唯一的,如果添加进去重复的数据,不会报错,但是只会显示一个,这种特性可以用来去重
{ let list=new Set();
list.add(1);
list.add(2);
list.add(1);
console.log('list',list);
}

上面的代码中多添加了一个1,但是只会显示一个1
let arr=[1,2,3,1,2];
let list2=new Set(arr);
console.log('list2',list2);

set不会转换数据类型
let arr=[1,2,3,1,'2'];//前面的2是数值,后面的2是字符
let list2=new Set(arr);
console.log('list2',list2);

set方法
添加:add
删除:delete
清空:clear
查看是否有某元素:has
遍历
{
let arr=[1,2];
let list=new Set(arr);
//遍历
for(let key of list.keys())
{ console.log('key ',key); }
for(let value of list.values())
{ console.log('value ',value); }
//如果不加方法,默认的会是value值
for(let value of list)
{ console.log('value/ ',value); }
for(let [key,value] of list.entries())
{ console.log('key,value ',key,value); }
}

遍历还可以使用forEach
list.forEach(function(item)
{ console.log('item',item); })

WeakSet的用法
WeakSet和Set支持的数据不一样吗,weakset的元素只能时候对象
weakset是一个弱引用,不会去检测是否与垃圾回收机制挂钩上
{
{ let weaklist=new WeakSet();
let arg={};//这个是一个对象
weaklist.add(arg);
console.log('weaklist',weaklist);
}

如果是weaklist.add(2);这样会报错
weakset没有clear方法
weakset没有set属性
weakset不能遍历
其他和set一样
Map的用法
map的key可以是多种类型
{ //声明
let map=new Map();
let ar=['123']; map.set(ar,456);//添加元素
console.log('map',map,map.get(ar));
}

还有初始化时赋值
{ let map=new Map([['a',123],['b',456 ]]);
console.log('map args',map); }

map的方法
求大小:size
获取值:get
添加值:set
删除:delete
清空:clear
遍历
和set一模一样
WeakMap的用法
weakmap与map的区别可以对比weakset与set的区别来验证
es6-set-map数据结构的更多相关文章
- ES6中Map数据结构学习笔记
很多东西就是要细细的品读然后做点读书笔记,心理才会踏实- Javascript对象本质上就是键值对的集合(Hash结构),但是键只能是字符串,这有一定的限制. 1234 var d = {}var e ...
- ES6中map数据结构学习
在项目中遇到一个很恶心的需求,然后发现ES6中的map可以解决,所以简单学习了一下map. Javascript的Object本身就是键值对的数据结构,但实际上属性和值构成的是“字符串-值”对,属性只 ...
- ES6中map数据结构
key值可以任意值或对象,value值可以是任意值或对象 let json={ name:'eternity', skill:'java' }; let map=new Map(); map.set( ...
- ES6 之 Set数据结构和Map数据结构 Iterator和for...of循环
ECMAScript 6 入门 Set数据结构 基本用法 ES6提供了新的数据结构Set.它类似于数组,但是成员的值都是唯一的,没有重复的值. Set本身是一个构造函数,用来生成Set数据结构. va ...
- ES6中的Set、Map数据结构
Map.Set都是ES6新的数据结构,他们都是新的内置构造函数.也就是说typeof的结果,多了两个. 他们是什么: Set是不能重复的数组. Map是可以任何东西当做键的对象: ES6 提供 ...
- es6学习笔记-set和map数据结构
ES6 提供了新的数据结构 Set.它类似于数组,但是成员的值都是唯一的,没有重复的值. Set 本身是一个构造函数,用来生成 Set 数据结构. const s = new Set(); [2, 3 ...
- JavaScript(ES6)学习笔记-Set和Map数据结构(一)
一.Set 1.ES6 提供了新的数据结构 Set.它类似于数组,但是成员的值都是唯一的,没有重复的值. Set 本身是一个构造函数,用来生成 Set 数据结构. , , , , ']); s; // ...
- es6笔记(5)Map数据结构
概要 字典是用来存储不重复key的Hash结构.不同于集合(Set)的一点,字典使用的是[key,value]的形式来存储数据. JavaScript的对象(Object:{})只能用字符串当做key ...
- js ES6 Set和Map数据结构详解
这篇文章主要介绍了ES6学习笔记之Set和Map数据结构,结合实例形式详细分析了ECMAScript中基本数据结构Set和Map的常用属性与方法的功能.用法及相关注意事项,需要的朋友可以参考下 本 ...
- ES6系列_12之map数据结构
1.map数据结构出现的原因? JavaScript 的对象(Object),本质上是键值对的集合(Hash 结构),但是传统上只能用字符串当作键.这给它的使用带来了很大的限制.为了能实现将对象作为键 ...
随机推荐
- [poj1062]昂贵的聘礼_最短路_离散化
昂贵的聘礼 poj-1062 题目大意:原文链接?不是英文题,自己看 注释:$1\le N \le 100$. 想法:开始的想法有些过于简单,因为落下了一个条件:就是等级限制是一条路径上的任意两点而不 ...
- Mybatis+0+null,小问题引发的血案
Mybatis在进行<if test="status != null and status != ''">判空操作时,假设status为0的时候,该推断条件的值为fal ...
- Hive权限之审计
因为在生产环境中大量使用hive.而hive的权限又较弱,假设可以记录全部hive操作,在增强安全性的同一时候,还可以统计hive表的使用频率:同一时候假设可以记录hql的開始和结束时间,则可以找出系 ...
- apache禁止訪问某些文件或文件夹的方法
[apache配置禁止訪问] 1. 禁止訪问某些文件/文件夹 添加Files选项来控制,比方要不同意訪问 .inc 扩展名的文件,保护php类库: <Files ~ "\.inc$&q ...
- ios最新设置状态栏字体颜色总结
状态栏的字体为黑色:UIStatusBarStyleDefault 状态栏的字体为白色:UIStatusBarStyleLightContent 一.在info.plist中,将View contro ...
- php debug二三事
最近php相关项目遇到了一些问题,处理起来让人感觉挺有意思,寥寥记下. 1.php执行后常驻内存里,需要kill掉该进程再重启,才能让修改后的代码生效. 之前有一次组里小伙伴修改了一个长期后台进程运行 ...
- 【NOIP2018】为什么这么无力啊
菜鸡又要爆零了 辛辛苦苦背板子结果考时候脑子一片空白 第一题线段树调了半小时 看完三道题两道写暴搜一道写暴力(说是暴搜,觉得更像写了个背包) 别提暴搜还忘记剪枝. . . . . . 我觉得考场上最菜 ...
- luogu2024 食物链
题目大意 动物王国中有三类动物 A,B,C,这三类动物的食物链构成了有趣的环形.A 吃 B,B吃 C,C 吃 A.现有 N 个动物,以 1 - N 编号.每个动物都是 A,B,C 中的一种,但是我们并 ...
- C# 读取ini文件 百度问问学习文档
C# 读取ini文件 10 有多个section,现想读取整个ini文件和指定section下所有内容 补充: 发布答案可以,请对准题目啊,我不要指定节点的内容,我知道!我要的是读取指定区域的内容,假 ...
- poj 1840(五元三次方程组)
Description Consider equations having the following form: a1x1 3+ a2x2 3+ a3x3 3+ a4x4 3+ a5x5 3=0 T ...