合并数组是编程中的一项常见任务,但当您想要确保生成的数组仅包含独特的物品。在本文中,我们将探索如何合并两个 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中文网其他相关文章!