Map()与Set()

Map()

Map是一个带键的数据项的集合,就像object一样。但是它们最大的差别是Map允许任何类型的键。

方法和属性

  • new Map() —- 创建map
  • map.set(key,value) —- 根据键存储值
  • map.get(key) —- 根据键来返回值,如果map中不存在对应的key,则返回undefined
  • map.has(key) —- 如果key存在则返回true,负责返回false
  • map.delete(key) —- 删除指定键的值
  • map.clear() —- 清空map
  • map.size —- 返回当前元素个数
let map=new Map() 

map.set('1','se') //根据键储存值 返回 Map(1) {"1" => "se"}

map.get('1') //根据键返回值,如果不存在返回undefind 返回se

map.has('1') //如果key存在返回true

map.delete('1') //删除指定键的值 返回true

map.clear() //清空 返回undefind

map.size //返回当前元素个数 返回0

https://blog.csdn.net/qq_52959651/article/details/110275146

Set()

  • 是一组key的集合,但不存储value。(或者说key、value相同)
  • 对象允许你存储任何类型的唯一值,无论是原始值或者是对象引用。Set中,key不能重复。如果出现重复的key,Set会自动过滤。Set没有索引,它的键和值是一个。
  • Set()是一个类似数组解构,但它不是数组。它本身就是一个构造函数。
  • 它最主要的作用是去重。
  • 可以使用Array.from()把它变成一个数组。
  • 通过展开运算符(…)可以把Set集合转换成一个数组。
let set = new Set([1, 2, 3, 3, 3, 4, 5]),
array = [...set] 
console.log(array)  // [1,2,3,4,5]

方法和属性

  • set.add("a")添加一个元素
  • set.delete("a")删除一个元素
  • set.size获取元素的数量
  • set.clear()清除对象中的所有元素。
  • set.has("a")判断s对象中是否有某个元素,返回true或false
//实例化一个Set对象
var set =new Set() 

//Set对象通过add方法添加元素
set.add('3')
set.add('3') //注意3和'3'是不同的元素
set.add('apple') 
console.log(s) //打印结果:Set(3) {3, "3", "apple"}

//使用delete可以删除元素
set.delete('apple') 
console.log(s)  //打印结果:Set(2) {3, "3"}

//清除set对象中的所有元素。
set.clear() 

例:可以用多个add加入元素

set.add(1).add('哈').add('apple') 
console.log(s)  //Set(3) {1, "哈", "apple"}
//Set括号中数字代表set中有几个元素

https://blog.csdn.net/qq_42238554/article/details/86609429

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注