1、使用 filter 和 indexO f方法
-
filter 过滤两个数组中相同的项,得到交集
-
indexOf 过滤两个数组中相同的项,得到相同项的数组
注意 indexOf 方法需要比较的两个类型相同才可以
let arr1 = [1, 2, 3, 4, 5, 6, 7, 8, 9];
let arr2 = [1, 2, 3, 4, 5, 6, 7];
filterHasSameArr = (arr1, arr2) => {
return arr1.filter((item) => {
if (arr2.indexOf(item) < 0) {
return item;
}
});
};
console.log(filterHasSameArr(arr1, arr2)); // [8,9]
2.使用 filter 和 includes 方法
-
filter 过滤两个数组中相同的项,得到交集
-
includes 过滤两个数组中相同的项,得到相同项的数组
let arr1 = [1, 2, 3, 4, 5, 6, 7, 8, 9];
let arr2 = [1, 2, 3, 4, 5, 6, 7];
filterHasSameArr = (arr1, arr2) => {
let arr = arr1.filter((item) => !arr2.includes(item));
return arr;
};
console.log(filterHasSameArr(arr1, arr2)); // [8,9]
如有不同见解,欢迎讨论,更多情景,正在更新中。。。。。。
本文介绍了使用 JavaScript 过滤两个数组中相同项的方法。一是使用 filter 和 indexOf 方法,可得到交集和相同项的数组,需注意比较的两个类型要相同;二是使用 filter 和 includes 方法,同样能得到交集和相同项的数组。更多情景正在更新。

1008

被折叠的 条评论
为什么被折叠?



