简单了解Map和Set的区别及用法

本文深入探讨ES6中新增的两种数据结构:Map和Set。Map用于存储键值对,支持任意类型作为键;Set则用于存储唯一值。文章详细介绍了这两种数据结构的创建、属性及方法,如size、set、get、delete等,并提供了实例代码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Map Set 是什么

Map 和 Set 是ES6新增的两个数据集合,都是属于内置构造函数,使用new的方式来实例化使用

Map
Map对象保存键值对。任何值(对象或者原始值) 都可以作为一个键或一个值。构造函数Map可以接受一个数组作为参数。
Map 的常用属性和方法

  • size 属性 获取该数据结构中,数据的数据个数
  • set() 方法 向该数据结构中,新增数据
  • get() 方法 向该数据结构中,获取数据
  • delete() 方法 向该数据结构中,删除指定的数据
  • clear(方法 清除该数据结构中,所有的数据
  • has()方法 查询数据结构中,有没有某个数据
  • forEach() 方法 用来遍历Map数据结构
const m1 = new Map([['a', 111], ['b', 222]])
console.log(m1) // {"a" => 111, "b" => 222}
m1.get('a')  // 111

const m2 = new Map([['c', 3]])
const m3 = new Map(m2)
m3.get('c') // 3
m3.has('c') // true
m3.set('d', 555)
m3.get('d') // 555

Set
Set对象允许你存储任何类型的值,无论是原始值或者是对象引用。它类似于数组,但是成员的值都是唯一的,没有重复的值。
Set的常用属性和方法

  • size属性 获取该数据结构中数据的数据个数
  • add()方法 向该数据结构中,追加新增数据
  • delete()方法 向该数据结构中,删除指定的数据
  • clear(方法 清除该数据结构中,所有的数据
  • has(方法 查询数据结构中,有没有某个数据
  • forEach() 方法 用来遍历Set数据结构
const mySet = new Set(['a', 'a', 'b', 1, 2, 1])
console.log(mySet)  // {'a', 'b', 1, 2}
myset.add('c').add({'a': 1})
console.log(mySet) // {'a', 'b', 1, 2, 'c', {a: 1}}
console.log(mySet.size) // 6

mySet.has(2) // true

*注意: Set数据的获取需要借助展开运算符,并放在数组中才能解析*

希望总结的这些能对大家有些帮助。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值