📜  js 查找数组中的重复项 - Javascript (1)

📅  最后修改于: 2023-12-03 14:43:32.365000             🧑  作者: Mango

JS 查找数组中的重复项

在 JavaScript 中,我们可以通过一些简单的方法来查找数组中的重复项。本文将介绍两种有效的方法:使用 Set 和使用高阶函数。

使用 Set

Set 是一种 JavaScript 对象,它允许你存储唯一的值。对于数组中的重复项,我们可以将数组转换为 Set,再将 Set 转回数组,这样就只剩下唯一的值了。

下面是一个使用 Set 的示例代码:

const arr = [1, 2, 3, 3, 4, 5, 5, 5];
const uniqueArr = Array.from(new Set(arr));
console.log(uniqueArr);

上述代码中,我们首先定义了一个包含重复项的数组。然后,我们将其转换为 Set,再使用 Array.from 方法将其转换回数组。最后,我们输出了结果,只剩下了 [1, 2, 3, 4, 5] 这些唯一的值。

使用高阶函数

高阶函数是指那些接受其他函数作为参数或者返回函数的函数。在 JavaScript 中,我们可以使用高阶函数来查找数组中的重复项。

const arr = [1, 2, 3, 3, 4, 5, 5, 5];
const repeatedItems = arr.filter((item, index) => arr.indexOf(item) !== index);
console.log(repeatedItems);

上述代码中,我们使用了 filter 方法来筛选重复项。我们遍历数组中的每个元素,并判断其在数组中的下标是否与该元素在原数组中的下标相同。如果不同,说明该元素是一个重复项,我们就将其筛选出来。最后,我们输出了结果,得到了 [3, 5] 这些重复项。

总结

以上提供了两种常见的查找 JavaScript 数组中的重复项的方法。使用 Set 和高阶函数都是有效的,并且很容易实现。具体哪种方法更适合你,需要看你的具体需求和代码实现。