[英]Compare array objects to equality
我正在寻找一个比较数组中有多少值匹配的函数。 它应取决于序列。 也就是说,应该将第一个数组中的第一个对象与第二个数组中的第一个对象的相等性进行比较,依此类推。 其实我看了看这个 ,但只有长度相比有变,长度是在我的情况总是一样的。 数组中可能的对象是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
尝试这个
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));
迭代项目并计算相等元素的解决方案。
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>');
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.