1. 检测浏览器是否支持Map和Set语法
<script>
'use strict';
var m = new Map()
var s = new Set();
console.log('你的浏览器支持Map和Set')
</script>
2. Map用法
2.1 概念
Map是一组键值对的结构,具有极快的查找速度
案例说明
<script>
// 传统方法实现查找某人的分数
var names = ['rulai', 'fozu', 'fofo'];
var scores = [95, 75, 85];
var index = names.indexOf('fozu');
fozu_scroe = scores[index];
console.log('fozu的分数是:' + fozu_scroe);
</script>
<script>
var m = new Map([['rulai', 95], ['fozu', 75], ['fofo', 85]]);
console.log('fozu的分数是:' + m.get('fozu')); // fozu的分数是:75
</script>
2.2 用法
键值对中的键是唯一的。存在一样,后面的操作会覆盖前面的
<script>
// 初始化操作
var m = new Map();
// 新增键值对
m.set('rulai', 95);
// 检测是否存在键值对
m.has('rulai');
// 获取键值对
m.get('rulai');
// 删除键值对
m.delete('rulai');
</script>
3 set用法
Set和Map类似,也是一组key的集合,但不存储value。
由于key不能重复。在Set中,没有重复的key,可以达到去重的效果
<script>
// 初始化操作
var s = new Set();
// var s = new Set([1, 2, 3]);
// 新增元素
s.add(95);
// 删除元素
s.delete(95);
</script>