Javascript 查找包含对象的两个数组之间的差异

Javascript 查找包含对象的两个数组之间的差异,javascript,underscore.js,Javascript,Underscore.js,我有两个阵列: var one = [ Object { _id="53c907016b7536a18b0001ab", title="..." }, Object { _id="53c90942b879875e2b0001ec", title="..." } ] var two = [ Object { _id="53c907016b7536a18b0001ab", title="..." } ] 我在寻找差异,即 [ Object { _id="53c90

我有两个阵列:

var one = [
    Object { _id="53c907016b7536a18b0001ab", title="..." },
    Object { _id="53c90942b879875e2b0001ec", title="..." }
]

var two = [
    Object { _id="53c907016b7536a18b0001ab", title="..." }
]
我在寻找差异,即

[
    Object { _id="53c90942b879875e2b0001ec", title="..." }
]
使用下划线.js,我尝试:

var difference = _.difference( one, two );
但这将返回整个
one
数组,而不是差异


我假设问题在于我的数组包含对象,而不是原语。如果是这种情况,我如何告诉下划线使用
\u id
的值进行比较?

试试下面的方法,它只适用于两个数组

_.reject(one, function(obj){ return _.findWhere(two, obj); });
但物体应该像贝娄一样

var one = [
{ _id:"53c907016b7536a18b0001ab", title:"..." },
{ _id:"53c90942b879875e2b0001ec", title:"..." }
]

var two = [
    { _id:"53c907016b7536a18b0001ab", title:"..." }
]

谢谢,我想这个答案,解决了我的问题。谢谢!是否有人知道与
.filter(一,函数(obj){return!\uu.findWhere(二,obj);})相比,它的性能如何我不知道,但我使用的是这样的,因为我只是试图逃避
返回!一些东西