ES6 中的 Set 和 Map 使用技巧

阅读时长 5 分钟读完

在 ES6 中,Set 和 Map 是两个新的数据结构,它们非常实用,对于前端开发来说也非常有用。它们与传统的数组和对象有些不同,因此我们需要掌握它们特有的用法和操作方法,以充分利用 ES6 中的这两个数据结构。

Set 数据结构

Set 是一种集合结构,它能够存储各种类型的数据(包括基本类型和对象),并且不允许重复元素的存在。Set 对象中的元素是按照插入的顺序进行排序的,因此它是有序的。

创建一个 Set

创建一个 Set 对象很简单,只需要使用 new 关键字就行了:

我们还可以在创建的时候传入一个数组,这个数组中的元素会被自动添加到 Set 中:

添加元素

添加元素的方式有两种。一种是使用 add() 方法:

另一种方式是使用数组方式:

删除元素

使用 delete() 方法可以删除一个元素:

判断元素是否存在

使用 has() 方法可以判断一个元素是否存在:

获取元素数量

使用 size 属性可以获取 Set 对象中的元素数量:

清空 Set 对象

使用 clear() 方法可以清空 Set 对象中的所有元素:

遍历 Set 对象

可以使用 forEach() 方法遍历 Set 对象中的所有元素:

遍历时可以指定第二个参数,表示回调函数中 this 指向:

除了 forEach() 方法,还可以使用 for...of 循环遍历 Set 对象:

示例代码

-- -------------------- ---- -------
--- --- - --- ------- -- -- -- -- -- -- ---- ------
-------------
-------- - ----
--------------------------
--------------------------
----------------------
----------------
------------
-------------------- --------- -
  ---------------------
---
--- ---- ------- -- ---- -
  ---------------------
-

Map 数据结构

Map 数据结构是一种键值对的集合,它能够存储任何类型的值(包括基本类型和对象),并且以键值对的方式进行存储和访问。Map 中的键是唯一的,而值则可以重复。

创建一个 Map

创建一个空 Map 对象:

创建一个包含初始值的 Map 对象:

添加元素

使用 set() 方法添加元素:

获取元素

使用 get() 方法获取元素:

判断元素是否存在

使用 has() 方法可以判断一个键是否存在:

删除元素

使用 delete() 方法可以删除一个键值对:

获取 Map 对象长度

使用 size 属性可以获取 Map 对象中键值对的数量:

清空 Map 对象

使用 clear() 方法可以清空 Map 对象中的所有键值对:

遍历 Map 对象

使用 forEach() 方法遍历 Map 对象:

使用 for...of 循环遍历 Map 对象:

示例代码

-- -------------------- ---- -------
--- --- - --- -----
  -------- --------
  ------- ----
---
----------------- --------
-----------------------------
----------------------------
---------------------
----------------------
------------
-------------------- ------- ---- -
  ---------------- -------
---
--- ---- ----- ------ -- ---- -
  ---------------- -------
-

总结

Set 和 Map 是 ES6 中新增的数据结构,它们具有不同于传统数组和对象的特性,可以很好地用来存储和操作数据。掌握它们的基本用法和操作方法可以让我们在开发中更加高效。这两个数据结构的使用方法虽然简单,但是应用广泛,能够帮助开发者更好地处理数据,提高应用程序的性能。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/65b6c42badd4f0e0fff684b1

纠错
反馈