如何在 JavaScript 中将数组转换为集合?
本教程将教你如何通过将数组转换为集合来消除 Javascript 中项目数组中的重复值。
在 Javascript 中存储来自数据集合的不同值时,我们可以利用 Set 数据结构来去除重复值。当我们希望从数据中消除重复项或利用 Set 数据结构提供的特殊功能时,将数组转换为 Set 会很有帮助。
让我们看一些示例和方法来更好地理解这个概念 -
示例 1 - 使用 Set 构造函数
通过 Set 构造函数,可以从可迭代对象(或可以循环遍历的对象,例如数组)中获取一组不同的值。
在这个示例中,我们将 -
创建一个名为 an array 的数组,其中包含一些重复的值
通过将数组作为参数传递给 Set 构造函数,创建一个名为 set 的新 Set 对象
Set 会自动删除重复值,只保留唯一元素
文件名 - index.html
<html> <head> <title>Convert Array to Set - Using Set Constructor</title> <script> const array = [1, 2, 3, 3, 4, 5]; const set = new Set(array); console.log(set); // Output: Set {1, 2, 3, 4, 5} </script> </head> <body> <h1>Convert Array to Set - Using Set Constructor</h1> </body> </html>
输出
结果将类似于下图。
示例 2 - 使用扩展运算符
为了去除重复项,我们还可以使用扩展运算符 (...) 和 Set 构造函数。可以使用扩展运算符将可迭代对象(或可以循环遍历的对象,例如数组)扩展成单个元素,然后将这些元素传递给 Set 构造函数。
在这个示例中,我们将 -
使用扩展运算符 ... 将数组的元素扩展成单个值。
然后,我们将这些值作为参数传递给 Set 构造函数,创建一个新的 Set 对象 set。
文件名 - index.html
<html> <head> <title>Convert Array to Set - Using Spread Operator</title> <script> const array = [1, 2, 3, 3, 4, 5]; const set = new Set([...array]); console.log(set); // Output: Set {1, 2, 3, 4, 5} </script> </head> <body> <h1>Convert Array to Set - Using Spread Operator</h1> </body> </html>
输出
结果将类似于下图。
示例 3 - 使用 Array.from()
我们可以使用 Array.from() 函数从现有数组生成一个新的数组实例,然后我们可以将这些元素发送到 Set 构造函数
在这个示例中,我们将 -
使用 Array.from() 从数组创建一个新数组,然后将生成的数组作为参数传递给 Set 构造函数,创建一个新的 Set 对象 set
文件名 - index.html
<html> <head> <title>Convert Array to Set - Using Array.from()</title> <script> const array = [1, 2, 3, 3, 4, 5]; const set = new Set(Array.from(array)); console.log(set); // Output: Set {1, 2, 3, 4, 5} </script> </head> <body> <h1>Convert Array to Set - Using Array.from()</h1> </body> </html>
输出
结果将类似于下图。
结论
总之,您可以通过使用 Set 构造函数、扩展运算符 (...) 或 Array.from() 函数在 JavaScript 中从数组创建 Set。我们可以使用每种方法快速将数组转换为 Set,以便我们可以与各个元素进行交互。我们研究了将数组转换为集合的各种技术,并检查了示例以进一步加深我们的理解。