当前位置: 首页 > 面试题库 >

比较两个Javascript数组并删除重复项

南门刚捷
2023-03-14
问题内容

如果它具有另一个数组的元素,是否还有其他更好的方法可以从一个数组中删除重复项呢,它工作得很好。

<script>
var array1 = new Array("a","b","c","d","e","f");
var array2 = new Array("c","e");

for (var i = 0; i<array2.length; i++) {
    var arrlen = array1.length;
    for (var j = 0; j<arrlen; j++) {
        if (array2[i] == array1[j]) {
            array1 = array1.slice(0, j).concat(array1.slice(j+1, arrlen));
        }
    }
}
alert(array1);

</script>

问题答案:
array1 = array1.filter(function(val) {
return array2.indexOf(val) == -1;
});

或者,随着ES6的推出:

array1 = array1.filter(val => !array2.includes(val));


 类似资料:
  • 问题内容: 所以这让我很困扰。 我有两个数组: 现在,我想比较这两个数组,并删除所有重复的值。 最后,我想要这两个数组,但其中没有’demo’和’some’值。 我想从具有相同索引键和值的array-s中删除所有值。 数组将始终具有相同数量的值和索引,我只想比较它们并从它们中删除具有相同索引键和值的条目。 我现在正在做这样的事情: 这有效!但是我想知道还有其他方法吗?也许不使用foreach循环?

  • 问题内容: 我有两个JavaScript数组: 我希望输出为: 输出数组应删除重复的单词。 如何在JavaScript中合并两个数组,以使每个数组中的唯一项按插入原始数组中的相同顺序获得? 问题答案: 仅合并数组(不删除重复项) ES5版本使用: ES6版本使用解构 由于没有“内置”方式来删除重复项ECMA-262实际上有这样做的好处),因此我们必须手动进行: 然后,使用它: 这也将保留数组的顺序

  • 我有一个简单的javascript问题,我真的需要一些帮助!我正在尝试弄清楚如何在数组之间比较元素,以及在下一个循环中再次比较较大的元素。假设我们有数组A和数组B。 我的问题是,在比较索引处的元素之后,我希望在下一个循环周期中比较较大的元素。 如果A=[5,7,4],B=[2,8,5] 在第一个循环中,5与2进行比较,2较小,因此会发生一些事情。在下一个循环周期中,我希望5与8进行比较,而对于现在

  • 我有以下数组列表 现在我需要比较这两个数组,并检查是否有id中的任何值存在于empIds中。如果是,我需要以布尔值true退出。我是这样做的。 但这需要很多时间。有人能帮我优化一下吗?

  • 问题内容: 我有两个表,并且如果第二个表中存在行的确切副本,则需要从第一个表中删除行。 有没有人举过我如何在MSSQL Server中执行此操作的示例? 问题答案: 好吧,在某个时候,您将必须检查所有列-可能还需要加入… 应该可以做到……还有,但是这只会有所 帮助 -您仍然需要检查实际值以防止哈希冲突。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

  • 问题内容: 嗨,我正在尝试合并两个数组,并且还想从最终数组中删除重复的值。 这是我的数组1: 这是我的数组2: 我用于将两个数组合并为一个数组。它正在给出这样的输出 我要删除这些重复的条目,或者在合并之前删除它们…请帮助。.谢谢!!! 问题答案: http://se2.php.net/manual/zh/function.array- unique.php