es6中的Set和Map数据结构

es6新增了俩种数据结构 Set和Map 因为工作中确实很少用到 但面试的时候面试官 喜欢考察这些问题
今天我们就来简单的了解一下
1.Set数据结构 里面存储数值 且 不能重复

```javascript
// 了解一下基础用法
var s=new Set()  或者 var s=new Set([1,2,3,4,5,3])
// 里面可以有重复的数字 但最后是不会显示出来
// 往里面添加数字
s.add(6)
//删除数据
s.delete(6)
s.has(value)// 返回一个布尔值,表示该值是否为Set的成员。 
s.clear()//  清除所有成员

2.Map数据结构 以是键值对的形式存在的方式
传统的键值方式 的对象 一般是字符串 形式
如 var obj={name:‘xiaowang’} 其中传统的对象是不能是 数组,字符串,甚至是一个对象形式
这个 Map数据结构可以做到 弥补了传统对象中键值对的 不足点

var s=new  Map()
// Map数据往里面添加数据
s.set(['name'],'小王')    //第一个是key值 第二个是value值
// 获取 value值
s.get(['name'])   // 会得到小王
s.has(value)  // 判断是否有value值 有的话返回 true 没有返回false
s.delete(key)    // 删除数据
s.clear()   // 清空数据

这俩个都是可以做简单了解 下基础 用法 其中 Set利用其中不能重复的原则 可以用来数据去重

var arr=[1,2,2,2,3,3,4,5];
console.log([...Set(arr)]) // 配合扩展运算符 展开 就做到了数据去重

Set数据结构中没有 键 值 这个注意下 其他的 数据操作上也有点不同在于 数据的添加方式就不同
往后工作中用到的话 我会回来继续添加的

发布了196 篇原创文章 · 获赞 66 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/yunchong_zhao/article/details/104483524