如何比较两个JavaScript数组以确定它们是否具有相同的值?

时间:2014-03-30 00:37:00

标签: javascript arrays

我不想将两个数组作为一个整体进行比较,我特别想检查第二个数组是否有任何与第一个数组中的值匹配的值。然后我想返回两者中匹配的值。

如果我没有弄错的话,将两个数组作为一个整体进行比较将是这样做的:

array1 = [1,2,3];
array2 = [1,3,4];

console.log(JSON.encode(array1)==JSON.encode(array2));

所以在这种情况下,我想检查array2是否与数组1有任何匹配的值,而不是它们两者是否相等。任何帮助表示赞赏!

1 个答案:

答案 0 :(得分:0)

var array1 = [1, 2, 3],
    array2 = [1, 3, 4];

var AnyItemsOfArray1InArray2 = array1.some(function(item) {
    return array2.indexOf(item) > -1;
});
console.log(AnyItemsOfArray1InArray2);

var ItemsOfArray1InArray2 = array1.filter(function(item) {
    return array2.indexOf(item) > -1;
});
console.log(ItemsOfArray1InArray2);