将数组对象与等式

时间:2015-11-09 10:38:34

标签: javascript arrays

我正在搜索一个函数,用于比较数组中匹配的值。它应该是序列依赖的。这意味着,即第一个数组中的第一个对象应该与第二个数组中的第一个对象相等,以此类推。我实际上看了this,但只有长度比较,长度在我的情况下总是相同的。数组中可能的对象是1,2,3,4,5,6,7,8,9。我应该拆分数组然后比较它们,何时是,如何?

以下是两个例子:

var array1 = ["3","4","2"];
var array2 = ["9","4","7"];
// result = 1

第二个例子:

var array1 = ["9","4","7","3"];
var array2 = ["3","4","7","2"];
// result = 2

2 个答案:

答案 0 :(得分:5)

试试这个

var array1 = ["3","4","2"];
var array2 = ["9","4","7"];

function equal(array1, array2) {
  var len = array1.length, i, count = 0;
  
  for (i = 0; i < len; i++) {
    if (array1[i] === array2[i]) {
      count++;
    }
  }
  
  return count;
}

console.log(equal(array1, array2));

答案 1 :(得分:0)

迭代项目并计算相等元素的解决方案。

&#13;
&#13;
function compare(a1, a2) {
    var i = 0, count = 0;
    while (i < a1.length && i < a2.length) {
        a1[i] === a2[i] && count++;
        i++;
    }
    return count;
}

document.write(compare(["3", "4", "2"], ["9", "4", "7"]) + '<br>');
document.write(compare(["9", "4", "7", "3"], ["3", "4", "7", "2"]) + '<br>');
&#13;
&#13;
&#13;