文文---Set,Map
Set和Map
Set:类似数组 成员的值是唯一的 下有 add(),has(),delete(),clear(),size 等方法
Map:类似于对象 成员的值是唯一的 下有 set(),has(),delete(),clear(),size 等方法
1.set下的方法
const set = new Set(); //////////////这里的小set可以换成别的,千万不要以为就是set
set.add(2).add('2').add(4); //添加
console.log(set); //Set(3) {2, "2", 4}
//可以直接把数组写进去
var arr = [1,2,3,4,2,4,5,2,1,4,5,5,7];
const set2 = new Set(arr);
console.log(set2); //{1, 2, 3, 4, 5, 7}
//has() 是否set成员 返回true false
set.has(2) //true
//delete() 删除
set.delete(3);
//clear() 清除所有
set.size //3 set 的长度
2.map 下的方法
//map可以接受一个数组作为参数
var m = new Map([['name','a'],['age',10],['a',3]]);
//或者
var arr=[['name','a'],['age',10],['a',3]]
var m = new Map(arr);//Map(3) {"name" => "a", "age" => 10, "a" => 3}
//map的键可以是其它的类型 键值对
var m = new Map()
m.set('name','abc').set('age',20);
var name1 = 'name';
m.get(name1);//"abc"
//可以为其它类型
m.set(123,'123');
m.set(true,'124');
m.set(undefined,'124');
var a = {msg:'hello'};
m.set(a,'name');//{"name" => "abc", "age" => 20, 123 => "123", true => "124", undefined => "124",
,Object => "name"}
m.get(a);//"name"
//has(),delete(),clear(),size方法同上
/***Set 和 Map 的遍历方法***/
//遍历 方法 keys()--键的值 value()--值 entries()--键值对
1.set 的遍历方法
var arr2 = new Set([1,2,3,4,2,4,5,2,1,4,5,5,7]);
for(let e of arr2.entries()){
console.log(e);//获取到的是去重后的 键值对 键==值
};
for(let k of arr2.keys()){
console.log(k);//获取到的是键
};
for(let v of arr2.values()){
console.log(v);//获取到的是值
};
2. map 的遍历方法
var m = new Map([['name','a'],['age',10],['a',3]]);
for(let e of m.entries()){
console.log(e);// 获取的是键值对 ["name", "a"] ["age", 10] ["a", 3]
};
for(let k of m.keys()){
console.log(k);// 获取的是键 name age a
};
for(let v of m.values()){
console.log(v);// 获取的是值 a 10 3
};
文文---Set,Map的更多相关文章
- 学习JQuery中文文档之map()函数和get()函数
今天学到一个新的函数map(). map(callback) 官方概述: 将一组元素转换成其他数组(不论是否是元素数组) 你可以用这个函数来建立一个列表,不论是值.属性还是CSS样式,或者其他特别形式 ...
- Phoenix综述(史上最全Phoenix中文文档)
个人主页:http://www.linbingdong.com 简书地址:http://www.jianshu.com/users/6cb45a00b49c/latest_articles 网上关于P ...
- Spring中文文档
前一段时间翻译了Jetty的一部分文档,感觉对阅读英文没有大的提高(*^-^*),毕竟Jetty的受众面还是比较小的,而且翻译过程中发现Jetty的文档写的不是很好,所以呢翻译的兴趣慢慢就不大了,只能 ...
- jQuery 3.1 API中文文档
jQuery 3.1 API中文文档 一.核心 1.1 核心函数 jQuery([selector,[context]]) 接收一个包含 CSS 选择器的字符串,然后用这个字符串去匹配一组元素. jQ ...
- Google Map Api 谷歌地图接口整理
一:基本知识: 1. 使用谷歌地图 API 的第一步就是要注册一个 API 密钥,需要注重一下两点: 1.假如使用 API 的页面还没有发布,只是在本地调试,可以不用密钥,随便用个字符串代替就可以了. ...
- npm的package.json字段含义中文文档
简介 本文档有所有package.json中必要的配置.它必须是真正的json,而不是js对象. 本文档中描述的很多行为都受npm-config(7)的影响. 默认值 npm会根据包内容设置一些默认值 ...
- 内置函数 -- filter 和 map
参考地址:http://www.cnblogs.com/sesshoumaru/p/6000788.html 英文文档: filter(function, iterable) Construct an ...
- Python内置函数(34)——map
英文文档: map(function, iterable, ...) Return an iterator that applies function to every item of iterabl ...
- Python内置函数(40)——map
英文文档: map(function, iterable, ...) Return an iterator that applies function to every item of iterabl ...
随机推荐
- Go语言之高级篇beego框架之layui框架应用
1.layui前端框架 参考地址:https://www.layui.com
- python下的selenium和PhantomJS
一般我们使用python的第三方库requests及框架scrapy来爬取网上的资源,但是设计javascript渲染的页面却不能抓取,此时,我们使用web自动化测试化工具Selenium+无界面浏览 ...
- JS对HTML字符的转义
function htmlEscape(str){ var s = ""; if(str.length == 0) return ""; s = str.rep ...
- HTTPS IP直连问题小结
HTTPS IP直连问题小结: https://blog.csdn.net/leelit/article/details/77829196 可以使用OkHttpClient进行相同IP地址,不同DNS ...
- bimgotoblock-BIM要上区块链
比特币(BitCoin)的暴涨暴跌让参与者体验着过山车的感觉,有人一夜暴富.别墅靠海,也有人拍断大腿或者恨不得跳楼了此残生.世人也更多的听说了比特币底层的依托--区块链(BlockChain) 技术. ...
- ajax的请求,参数怎么管理?
一般发送一条ajax 然后点击界面需要更改查询条件,第一种是做一个form表单比较合适的设计.更改了参数回收表单然后重新发送ajax: 还有一种是把参数缓存到变量中,然后更改了条件修改变量再次重发aj ...
- Dubbo接口压测
在每年的双十一大促之前,除了全链路压测,还需要各个业务方对自己业务提供的核心接口进行单接口压测,以评判系统的稳定性和承压能力. 一.准备工作 环境准备:确保应用性能环境(perf)正常可用 压测接口梳 ...
- Django根据现有数据库建立/更新model
Django引入外部数据库还是比较方便的,步骤如下: 创建一个项目,修改seting文件,在setting里面设置你要连接的数据库类型和连接名称,地址之类,和创建新项目的时候一致 运行下面代码可以自动 ...
- Docker 集群Swarm创建和Swarm Web管理
关于Docker Swarm更多的介绍请查看<Docker管理工具-Swarm部署记录> 一.环境配置 1.安装环境 # cat /etc/redhat-release CentOS Li ...
- 转发:entos7修改文件夹权限和用户名用户组
Linux系统下经常遇到文件或者文件夹的权限问题,或者是因为文件夹所属的用户问题而没有访问的权限.根据我自己遇到的情况,对这类问题做一个小结.在命令行使用命令“ll”或者“ls -a”,可以查看文件或 ...