用JavaScript实现两个数组的交集
时间: 2024-05-09 20:17:49 浏览: 89
可以使用以下代码实现两个数组的交集:
```
function intersect(arr1, arr2) {
return arr1.filter(value => arr2.includes(value));
}
const arr1 = [1, 2, 3, 4];
const arr2 = [2, 4, 6, 8];
console.log(intersect(arr1, arr2)); // [2, 4]
```
该函数接受两个数组作为参数,然后使用 `filter` 方法过滤出其中在另一个数组中也存在的元素,然后返回一个新的数组作为结果。
相关问题
JavaScript返回两个数组的交集
可以使用JavaScript的filter方法和includes方法来实现数组的交集。具体代码如下:
```
const arr1 = [1, 2, 3, 4];
const arr2 = [3, 4, 5, 6];
const intersection = arr1.filter(num => arr2.includes(num));
console.log(intersection); // [3, 4]
```
以上代码中,我们首先定义了两个数组arr1和arr2,然后使用filter方法过滤出arr1中与arr2相同的元素,最后将结果存储在intersection数组中。注意,在filter方法中使用了includes方法来检查arr2中是否包含当前数值。
JavaScript返回两个数组的交集并去重
可以使用ES6中的Set对象来实现两个数组的交集去重。具体步骤如下:
```
const arr1 = [1, 2, 3, 4, 5];
const arr2 = [3, 4, 5, 6, 7];
// 将第一个数组转换成set对象
const set1 = new Set(arr1);
// 通过filter方法过滤出set1中同时存在于arr2中的元素
const result = arr2.filter(item => set1.has(item));
// 输出结果为[3, 4, 5]
console.log([...new Set(result)]);
```
阅读全文