首页 >web前端 >js教程 >如何在不使用外部库的情况下找到两个 JavaScript 数组的交集?

如何在不使用外部库的情况下找到两个 JavaScript 数组的交集?

Barbara Streisand
Barbara Streisand原创
2024-12-28 17:03:17661浏览

How Can I Find the Intersection of Two JavaScript Arrays Without Using External Libraries?

在没有库的情况下在 JavaScript 中查找数组交集

要在不使用其他库的情况下确定两个数组的交集,请考虑实现以下内容代码:

解决方案:

结合使用 Array.prototype.filter 和 Array.prototype.includes 方法:

const filteredArray = array1.filter(value => array2.includes(value));

说明:

此代码过滤元素array1 的值取决于它们是否也存在于 array2 中。 include 方法检查数组中是否存在元素。因此,结果是一个仅包含两个输入数组共有的元素的数组。

对于旧版浏览器:

如果使用不支持的旧版浏览器箭头函数或包含,以下代码可以使用:

var filteredArray = array1.filter(function(n) {
    return array2.indexOf(n) !== -1;
});

注意事项:

需要注意的是,include 和indexOf 都使用严格相等(===)执行比较。如果数组包含对象,则仅比较对象引用。为了适应自定义比较逻辑,请改用 Array.prototype.some。

以上是如何在不使用外部库的情况下找到两个 JavaScript 数组的交集?的详细内容。更多信息请关注PHP中文网其他相关文章!

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