快速找出数组中是否包含公共项
要求 : 两个数组中是否包含公共项,包含返回true,不包含返回false
方法一:
1.使用内置ES6函数some()遍历第一个数组每个元素测试
2.第二个数组使用内置函数includes来检查元素是否存在第一个数组中
//第一种
function findCommonElements3(arr1,arr2){
return arr1.some(item => arr2.includes(item))
}
var a = findCommonElements3(arr1,arr2);
console.log(a) //false
方法二:
1.利用对象
function findCommonElements2(arr1,arr2){
let obj = {};
for(let i =0;i<arr1.length;i++){
if(!obj[arr1[i]]){
const elem = arr1[i];
obj[elem] = true
}
}
for(let j = 0;j<arr2.length;j++){
if(obj[arr2[j]]){
return true ;
}
}
return false ;
}
var b = findCommonElements2(arr1,arr2);
console.log(b) //false
图片中包含所有的代码
来源:oschina
链接:https://my.oschina.net/u/4461771/blog/4277892