博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ES6 中的set,map
阅读量:6040 次
发布时间:2019-06-20

本文共 1883 字,大约阅读时间需要 6 分钟。

Set和Map 

 Set:类似数组 成员的值是唯一的 下有 add(),has(),delete(),clear(),size 等方法 

 Map:类似于对象 成员的值是唯一的 下有 set(),has(),delete(),clear(),size 等方法 

 1.set下的方法 

 

const set = new 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        };         复制代码

转载于:https://juejin.im/post/5bfc08ac6fb9a049c84f2300

你可能感兴趣的文章
杨泽业:wordpress在Nginx/Apache/IIS中的伪静态规则
查看>>
Python 中使用 MongoDB 存储爬虫数据
查看>>
WindowsServer 2008 AD搭建FTP隔离用户
查看>>
lmdb
查看>>
大文件如何传输,大文件的传输方式有哪些?
查看>>
docker的持久化存储和共享存储和网络架构
查看>>
撕掉普通程序员的标签,这才是真正的大数据工程师!
查看>>
Windows下安装Sqlmap过程及遇到的问题
查看>>
BSD常见分支
查看>>
开挂了!这5个Word技巧真的是超级实用,值得收藏!
查看>>
三分钟了解实时流式大数据分析
查看>>
留与后人一段面试的总结
查看>>
Spring基于XML方式配置事务
查看>>
T-MBA学习营 | 寒窗十数载,我们原来并不会学习?
查看>>
log4j.properties模板
查看>>
Linux:信号(上)
查看>>
vmware虚拟化无法迁移虚拟机
查看>>
SQL UPDATE实现多表更新
查看>>
最近有个需求,就是把某个网址跳转到另外一个网址
查看>>
innobackupex 在增量的基础上增量备份
查看>>