比较两个javascript数组?

时间:2013-01-10 09:54:22

标签: javascript

我想比较两个数组,看是否匹配,以及是否有所作为。

var answers = new Array("a","b","c","d", "e");
var correct = new Array("a","d");
// do a for loop
// if there's a match console.log(letter + "is the correct answer")

3 个答案:

答案 0 :(得分:3)

尝试使用:

for(var i = 0; i < answers.length; i++) {
    for(var j = 0; j < correct.length; j++){
        if (answers[i] === correct[j]){ 
            console.log(answers[i]+ " is the correct answer")
            break;
        }
    }
}

答案 1 :(得分:0)

试试这段代码:

var a = [1,2,3,4]
  , b = [1,3,5,7,9]
  , c = ['a','b','c'];

function findDups( arr1, arr2 ) {
  var arrs = [ arr1, arr2 ].sort(function( a,b ) {
    return a.length > b.length;
  });
  return arrs[0].filter(function( v ) {
    return ~arrs[1].indexOf( v ); 
  });
}

function hasDups( arr1, arr2 ) {
  return !!findDups( arr1, arr2 ).length;
}

console.log( findDups( a,b ) ); //=> [1, 3]
console.log( hasDups( a,c ) ); //=> false

答案 2 :(得分:0)

看看这篇文章,有一个代码来比较无序数组:http://blog.maxcnunes.net/2012/08/10/comparacao-de-arrays-desordenados-javascript/

ps:帖子是葡萄牙语,但您可以使用任何翻译来理解