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数据的获取需要借助展开运算符,并放在数组中才能解析*
希望总结的这些能对大家有些帮助。