Map 和 Set
set
- set类似按照索引排序(但是能不能通过索引取值)
- 语法: let s = new Set([数据1, 数据2, 数据3])
- 特点: 天生不支持重复数据
- 1.size (类似于数组的长度 length): 作用:获取当前数据结构中数据的数量
- 2.add(要新增的数据) 作用: 向当前数据结构中 新增数据
语法: s.add(要新增的数据)
- 3.has(要查找的数据) 作用:查询当前数据结构中是否拥有该数据
语法: s.has(要查找的数据) 找到返回值 true 找不到返回值 false
- 4.delete(要删除的数据)
语法: s.delete(要删除的数据) 返回值删除后某一项后的数据结构
- 5.clear() 作用:清空数据结构
语法: s.clear()
- 6.遍历数据结构 作用: 遍历数据结构拿到数据的每一项
语法: s.forEach(function(item, key, origin){})
set 数据结构是没有key , 所以item 和 key 打印出来的值一样
Map
- Map 和set一样也不支持数据重复 类似于 对象的数据结构 但是Map 的key 可以是任意类型的值
在实际开发中 ,Map 的场景一般为 想要将对象 的key 用于字符串之外的数据时使用
- 语法:1 var m = new Map(][key , value])
-
2 var m = new Map([[key1, key2, key3, key4], [value1, value2, value3, value4]])
var m = new Map([[1, 2, 3, 4],[100, 200, 300, 400]])
console.log(m)
-
- size 作用: 返回当前数据结构的数据的长度(多少个)
-
- set() 作用: 相当前数据结构中新增数据
-
- get(key) 作用: 获取到指定的key 对应的 value
-
- has(key) 作用: 查询数据结构中是否存在当前 key; 存在返回一个 true, 否则返回一个 false
-
- delete 作用: 删除当前结构中对应的key
-
- clear 作用: 清空当前数据结构
-
- forEach
m.forEach(function( item, key, origin){
console.log(item, key, origin)
})