Javascript 比较两个数组并返回唯一值
我有以下两个阵列:Javascript 比较两个数组并返回唯一值,javascript,arrays,underscore.js,Javascript,Arrays,Underscore.js,我有以下两个阵列: array1 = [{'itemCode':'a'}, {'itemCode':'b'}, {'itemCode':'c'}]; array2 = [{'itemCode':'a'}, {'itemCode':'b'}, {'itemCode':'d'}]; 我正在寻找一种从数组1中分割数组2并返回“F”值的方法 有谁知道用JavaScript快速实现这一点的方法吗?我完全被难住了 我尝试了下划线中的“差异”和“唯一”,但这似乎不是正确的解决方案 var diffArr
array1 = [{'itemCode':'a'}, {'itemCode':'b'}, {'itemCode':'c'}];
array2 = [{'itemCode':'a'}, {'itemCode':'b'}, {'itemCode':'d'}];
我正在寻找一种从数组1中分割数组2并返回“F”值的方法
有谁知道用JavaScript快速实现这一点的方法吗?我完全被难住了
我尝试了下划线中的“差异”和“唯一”,但这似乎不是正确的解决方案
var diffArray = _.difference(array1, array2);
任何帮助都将不胜感激
我想这会回答你的问题
var unique = [];
for(var i = 0; i < array1.length; i++){
var found = false;
for(var j = 0; array2.length; j++){
if(array1[i].itemCode == array2[j].itemCode){
found = true;
break;
}
}
if(found == false){
unique.push(array1[i]);
}
}
var unique=[];
对于(变量i=0;i
我在数组中看不到“F值”。我认为当元素是这样的对象时,indexOf()
不起作用。它不会递归地比较对象。是的,你是对的,我忽略了数据类型。但这在某种程度上证明了它是如何做到的。我不熟悉javascriptIt,它没有真正演示它是如何完成的,因为当indexOf()
无法匹配它们时,您必须执行完全不同的操作。