ECMAScript 2020: Set 和 Map 集合的所有操作详解

在 ECMAScript 2020 中,Set 和 Map 是两个新的内置对象,用于管理数据集合。

Set 集合

Set 集合是一组唯一值的集合,允许添加、删除、查找和迭代元素。它的方法遵循以下语法:

其中可选参数 iterable 是迭代器对象,可以是任意类型的。

添加元素

可以通过以下方法向 Set 集合中添加元素:

  • add(value):将 value 添加到集合中,返回集合本身。

例如:

删除元素

可以通过以下方法从 Set 集合中删除元素:

  • delete(value):删除集合中的 value,返回一个布尔值表示是否删除成功。

例如:

查找元素

可以通过以下方法查找 Set 集合中的元素:

  • has(value):返回一个布尔值,表示集合是否包含 value。

例如:

迭代元素

可以通过以下方法迭代 Set 集合中的元素:

  • keys():返回一个包含集合所有元素的迭代器对象。
  • values():与 keys() 方法相同,返回一个包含集合所有元素的迭代器对象。
  • entries():返回一个包含集合所有元素的迭代器对象,其中每个元素都是一个数组 [value, value]
  • forEach():遍历所有元素并执行给定的回调函数。

例如:

Map 集合

Map 集合是一组键值对的集合,允许添加、删除、查找和迭代元素。它的方法遵循以下语法:

其中可选参数 iterable 是迭代器对象,可以是任意类型的。

添加元素

可以通过以下方法向 Map 集合中添加元素:

  • set(key, value):将 key 和 value 添加到集合中,返回集合本身。

例如:

删除元素

可以通过以下方法从 Map 集合中删除元素:

  • delete(key):删除集合中的 key,返回一个布尔值表示是否删除成功。

例如:

查找元素

可以通过以下方法查找 Map 集合中的元素:

  • get(key):返回 key 对应的 value,如果不存在则返回 undefined。
  • has(key):返回一个布尔值,表示集合是否包含 key。

例如:

迭代元素

可以通过以下方法迭代 Map 集合中的元素:

  • keys():返回一个包含集合所有键的迭代器对象。
  • values():返回一个包含集合所有值的迭代器对象。
  • entries():返回一个包含集合所有键值对的迭代器对象。
  • forEach():遍历所有键值对并执行给定的回调函数。

例如:

总结

Set 和 Map 集合是管理数据集合的有用工具,可以大幅简化相关操作。熟练掌握它们的方法能为前端开发提高效率和质量。

示例代码:

来源:JavaScript中文网 ,转载请注明来源 本文地址:https://www.javascriptcn.com/post/6528346d7d4982a6ebab739a


纠错
反馈