令人困惑的标题,解释的唯一简单方法是向您展示我的目标:
var user = [
{foo:"test",bar:1},
{foo:"test2",bar:2}
];
var items = [{foo:"test",bar:1},{foo:"test4",bar:4},{foo:"test5",bar:5}]
我想要的是从items
中选择<{1}}中的一个项目,然后将其添加到user
。在这种情况下,user
对象最终看起来像:
user
我已经尝试了各种各样的_.filter,_.contains等组合,但无法弄明白。任何帮助将非常感谢!
答案 0 :(得分:1)
逻辑如下:您想要找到user
数组中未包含的第一个项目。
所以你可以做到以下几点:
var item = _.find(items, function (item) {
return !_.findWhere(user, item);
});