首页 >web前端 >js教程 >如何合并两个 JavaScript 数组并仅保留唯一的项目?

如何合并两个 JavaScript 数组并仅保留唯一的项目?

Mary-Kate Olsen
Mary-Kate Olsen原创
2024-12-24 05:40:19245浏览

How to Merge Two JavaScript Arrays and Keep Only Unique Items?

合并两个具有唯一项的 JavaScript 数组

合并数组是编程中的一项常见任务,但当您想要确保生成的数组仅包含独特的物品。在本文中,我们将探索如何合并两个 JavaScript 数组,同时保留其原始顺序并消除重复元素。

考虑两个 JavaScript 数组:

var array1 = ["Vijendra", "Singh"];
var array2 = ["Singh", "Shakya"];

我们的目标是创建一个新的数组 array3,包含 array1 和 array2 中的唯一元素。正确的输出应该是:

["Vijendra", "Singh", "Shakya"]

为了实现这一点,我们可以利用 JavaScript 内置数组方法的组合:

简单数组合并

要简单地合并两个数组而不删除重复项,我们可以使用 concat()方法:

var array3 = array1.concat(array2);
console.log(array3); // ["Vijendra", "Singh", "Singh", "Shakya"]

这将创建一个包含 array1 和 array2 中所有元素的新数组。但是,它并不能消除重复项。

通过重复数据删除进行合并

要在合并数组时过滤掉重复项,我们可以使用reduce() 的组合和includes()方法:

var array3 = array1.reduce((acc, curr) => !acc.includes(curr) ? acc.concat(curr) : acc, []);
var array4 = array3.concat(array2.filter(x => !array3.includes(x)));
console.log(array4); // ["Vijendra", "Singh", "Shakya"]

在这段代码中,我们在array1上使用reduce()来创建一个新数组只包含独特的元素。然后,我们将这个新数组与 array2 中过滤后的元素连接起来,确保删除重复项。

以上是如何合并两个 JavaScript 数组并仅保留唯一的项目?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn