当前位置:实例文章 » HTML/CSS实例» [文章]ES6知识点汇总(5)--Map&Set

ES6知识点汇总(5)--Map&Set

发布人:shili8 发布时间:2024-11-15 22:02 阅读次数:0

**ES6知识点汇总(5)-- Map & Set**

在前面的文章中,我们已经介绍了 ES6 中的数组方法、对象方法以及 Symbol 等知识点。今天我们要讲的是两个非常重要的数据结构:Map 和 Set。

###1. Map####什么是Map?

Map 是一个新的集合类型,类似于对象,但它可以存储键值对,而不仅仅是字符串或数字。Map 的每个键都是唯一的,并且可以是任意类型的值(包括函数、对象等)。

#### Map 的使用场景1. **缓存数据**: 当我们需要缓存一些数据时,Map 是一个很好的选择,因为它可以快速地查找和删除缓存。
2. **统计数据**: 当我们需要统计某些数据时,Map 可以帮助我们快速地计算出每个键的值。
3. **配置文件**: Map 可以用来存储配置文件中的键值对。

#### Map 的方法1. `new Map()`: 创建一个新的 Map 对象。
2. `map.set(key, value)`: 将指定的值添加到 Map 中,key 为该值的唯一标识符。
3. `map.get(key)`: 返回 Map 中 key 所对应的值,如果不存在,则返回 undefined。
4. `map.has(key)`: 检查 Map 中是否存在某个键,如果存在则返回 true,否则返回 false。
5. `map.delete(key)`: 删除 Map 中某个键所对应的值。
6. `map.clear()`: 清空 Map 中所有的键值对。

####代码示例

javascript// 创建一个新的 Map 对象let map = new Map();

// 添加一些键值对map.set('name', '张三');
map.set(1, 'hello');

// 获取某个键的值console.log(map.get('name')); // 张三console.log(map.get(1)); // hello// 检查某个键是否存在console.log(map.has('age')); // false// 删除某个键所对应的值map.delete(1);
console.log(map.get(1)); // undefined// 清空 Map 中所有的键值对map.clear();
console.log(map.size); //0


###2. Set####什么是Set?

Set 是一个新的集合类型,类似于数组,但它不允许重复的元素。

#### Set 的使用场景1. **去重**: 当我们需要去除某些数据中的重复项时,Set 是一个很好的选择。
2. **统计数据**: 当我们需要统计某些数据时,Set 可以帮助我们快速地计算出每个值的数量。

#### Set 的方法1. `new Set()`: 创建一个新的 Set 对象。
2. `set.add(value)`: 将指定的值添加到 Set 中。
3. `set.delete(value)`: 删除 Set 中某个值。
4. `set.has(value)`: 检查 Set 中是否存在某个值,如果存在则返回 true,否则返回 false。
5. `set.clear()`: 清空 Set 中所有的值。

####代码示例
javascript// 创建一个新的 Set 对象let set = new Set();

// 添加一些值set.add('hello');
set.add(1);
set.add('world');

// 检查某个值是否存在console.log(set.has('hello')); // trueconsole.log(set.has('world')); // true// 删除某个值set.delete(1);
console.log(set.has(1)); // false// 清空 Set 中所有的值set.clear();
console.log(set.size); //0


### 总结Map 和 Set 是两个非常重要的数据结构,它们可以帮助我们快速地存储和查找键值对或去重某些数据中的重复项。通过掌握这些知识,我们可以更好地解决一些实际的问题。

**参考资料**

* MDN Web Docs:[Map]( />* MDN Web Docs:[Set](

其他信息

其他资源

Top