美文网首页
JS中拜访Set、Map两兄弟

JS中拜访Set、Map两兄弟

作者: 羞羞的王大锤 | 来源:发表于2020-03-12 23:47 被阅读0次

今天主要谈谈ES6中新增加的两个数据结构,一个是Set一个是Map
他们到底是什么意思呢?
粗略的说Set是特殊的数组;Map是增强版的对象
下面我们就来认识一下这哥俩

Set

Set它类似于数组,只是这个数组里的值都是唯一的,没有重复!

const s = new Set([1,1,2,2])
[...s] //[1,2]

Set🐻:想在我这儿浑水摸鱼,人云亦云、滥竽充数,不能gou!你必须是独一无二的那一个!

Set用途

它一般被用来去除数组中重复的成员、取并集、交集、差集,因为真的很方便

去重

const s = new Set([1,1,2,2])
[...s] //[1,2]

取并集

let s1 = new Set([1,2])
let s2 = new Set([2,3])
let union = new Set([...s1,...s2])
union // Set {1,2,3}

取交集

let s1 = new Set([1,2]);
let s2 = new Set([2,3]);
let intersect = new Set([...s1].filter(x =>s2.has(x)))
intersect // Set {2}

取差集

let s1 = new Set([1,2]);
let s2 = new Set([2,3]);
let difference = new Set([...s1].filter(x =>!s2.has(x)))
difference // Set {1,3}

Map

Map它类似于对象,也是键值对的集合,但是"键"的范围不局限于字符串啦,各种类型的值包括对象都可以当它的键,可以说Map是一个增强版的对象

// 常规字符串作为键
// 对象的定义
const obj = {}
obj.name = 'chuichui'
obj //{name: "chuichui"}
// Map的定义
const map = new Map()
map.name = 'chuichui'
map //Map {name: "chuichui"}

Map中的键还可以是一个数组,只要你想到的都可以!

const map = new Map()
const arr = [1,2,3]
map.set(arr,1)
map.get(arr) // 1

Map🐻:我的键包罗万象,任何类型的数据都没问题,尽管放马过来,对象能干的事儿我都能干,他干不了的事儿,我也能干!

最后 🙌

好啦,以上就是我本次分享的全部内容啦,如果你觉得我的文章对你有一丢丢帮助,那么请不要吝啬你的赞👍哦,阿门~

相关文章

  • JS中拜访Set、Map两兄弟

    今天主要谈谈ES6中新增加的两个数据结构,一个是Set一个是Map他们到底是什么意思呢?粗略的说Set是特殊的数组...

  • Set-WeakSet (es6)

    数据结构:存放数据的方式js中Array可以使用下标,Map和Set不能使用下标。但是Array,Map,Set都...

  • JS中的Map和Set

    使用iterable内置的forEach方法 var a = ['A','B','C'];a.forEach(fu...

  • JS中的Map和Set

    使用iterable内置的forEach方法 var a = ['A','B','C'];a.forEach(fu...

  • js中的set和map类型

    Set与map Es6中新增加了两个数据类型set和map类型,下面就看下这两个类型的特性和用法。 一、 Set ...

  • Java集合(五)--HashMap简析

    前面分析了List的两个实例类,现在我们开始分析Map。至于为什么跳过Set先分析Map。嘿嘿,Set中的Hash...

  • spring中的prop、set、list、map

    spring中的prop、set、list、map - 冰封绝恋 - 博客园 props、set、list、map...

  • ES6

    Symbol Set和Map Set Map Proxy get() set() apply() Reflect ...

  • Map集合的取出方式

    map集合的两种取出方式: 1,Set keySet:将map中所有的键存入到Set集合。因为set具备迭代...

  • Java集合中List,Set以及Map等集合体系详解

    List , Set, Map都是接口,前两个继承至collection接口,Map为独立接口 Set下有Hash...

网友评论

      本文标题:JS中拜访Set、Map两兄弟

      本文链接:https://www.haomeiwen.com/subject/qhcnjhtx.html