JS技能 Map 和 Set

背景介绍:是ES6新增的两种数据结构

问题1:什么样的数据称为set数据结构?

       答:是一个特殊的类型集合即  “值的集合(没有键)” 它的每个值只出现一次

        let set = new Set(["oranges", "apples", "bananas"]);

 

问题2:什么样的数据称为Map数据结构?

       答:Map 对象保存键值对。任何值(对象或者原始值) 都可以作为一个键或一个值,ES6 提供了 Map 数据结构。它类似于对象,也是键值对的集合,但是“键”的范围不限于字符串,各种类型的值(包括对象)都可以当作键。也就是说,Object 结构提供了“字符串—值”的对应,Map 结构提供了“值—值”的对应,是一种更完善的 Hash 结构实现。

应用场景:对象去重

      let arrNew=[{name:'车型1',value:'55'},{name:'车型1',value:'55'},{name:'车型3',value:'65'}]
      let map = new Map();
      for(let item of arrNew){
          if(!map.has(item.value)){
            map.set(item.name,item)
          }
        }
        let arr=[...map.values()] 
        console.log(arr,'arr')

  • 7
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值