2015-06-20 39 views
0

我有2个阵列,例如返回true:比较2个数组,如果任何值匹配

数组1:一,二,三,四,五】 数组2:三,五]

如果Array2中的任何值与Array1中的任何值匹配,我需要一个返回true的函数。

我曾尝试:

var compareArray = $.inArray(Array1, Array2); 

但这总是返回 '-1'。

+0

这是因为$ .inArray()函数的值和数组。不是整个数组和另一个数组。所以,你必须遍历数组(使用for循环)来传递每个值与其他数组进行比较。 – 3abqari

+0

好吧我将如何循环访问数组并比较每个值与另一个数组?谢谢 –

回答

0

你可以尝试蛮力算法,如果你只用小数组工作。像下面的东西应该工作。

function findMatch(arr1, arr2) { 
 
    for (i=0; i < arr1.length; i++) { 
 
    for (j=0; j < arr2.length; j++) { 
 
     if (arr1[i] === arr2[j]) { 
 
     return true 
 
     } 
 
    } 
 
    } 
 
    
 
    return false 
 
}