set
set 类似于数组,没有重复的元素,开发中可用于去重操作,它的key和value相等
初始化一个set集合
let set = new Set([1,2,3,4,4]);
console.log(set); // Set { 1, 2, 3, 4 }
map
map类似于对象,本质上是键值对的集合。字符串、对象都可以当作键
初始化一个map集合
let map = new Map(
[
['name', '张三'],
['age', 14],
['age', 12],
]
)
可以去重,上述代码中的age将被覆盖成12
注意事项:
去重只针对于map集合的键是基本数据类型。对于Object这种复杂的数据类型不去重
let map = new Map(
[
['name', '张三'],
['age', 14],
['age', 12],
[{}, '123'],
[{}, '456'],
]
)
-
一些方法
-
set()
设置键值对
map.set('height', 1.78)
-
get()
通过键名获取元素
console.log(map.get('height')); // 1.78
-
delete()
删除一个键值对
map.delete('height')
-
has()
判断是否有该键值
console.log(map.has('height'));
-
clear()
清除map集合中的数据
map.clear()
-
keys(), values(), entries()
console.log(map.keys()); // [Map Iterator] { 'name', 'age' }
console.log(map.values()); // [Map Iterator] { '张三', 12 }
console.log(map.entries()); // [Map Iterator] { [ 'name', '张三' ], [ 'age', 12 ] }
对map进行遍历
map.forEach((value, index) => {
console.log(value);
console.log(index);
})
|