js数组方法 - 检测两个数组是否有重复项

Posted linxue

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js数组方法 - 检测两个数组是否有重复项相关的知识,希望对你有一定的参考价值。

项目里面有个需求,是检测两个数组里面是否有相同的重复项,有则返回 true,没有则返回 false,并且不需要获取重复项的数据。
如果是需要获取重复项的数据,那肯定需要遍历循环,但是既然只要简单知道是否重复,就没有必要一个个去遍历,直接用 ES6 的新数据类型 Set 即可,因为他有一个特性是每个元素都不重复,因此经常被用来做数组去重。
通过它的这个特性,自然也可以检测重复,将需要检测的两个数组合并成一个 Set,如果长度小于两个数组的长度之和,那么肯定存在重复项。

 function isInArry(arr1, arr2)
     let new_arr = new Set([...arr1, ...arr2])
     return new_arr.size < (arr1.length + arr2.length)
 

以上是关于js数组方法 - 检测两个数组是否有重复项的主要内容,如果未能解决你的问题,请参考以下文章

js数组中判断是否有重复项

从数组中删除重复的对象

计算对象数组中的重复项

js去掉数组中重复的元素

js如何去除数组中重复项

判断两个数组中是否有重复项