我想将两个json数组与对象合并为元素。您可以参考这两个json的plunkr file。我已成功检索预期的最终结果数组ID,但我不知道如何形成预期的JSON,如下所示。我正在为此使用下划线js。基于并集和交集合并两个json数组对象
注意:如果对象存在于newJson中而不存在于currentJson中,则合并后默认为inactive
状态。
我不确定我是否正在使用正确的方法。这是我尝试:
var newJsonID = _.pluck(newJson, 'id');
var currentJsonID = _.pluck(currentJson, 'id');
var union = _.union(newJsonID, currentJsonID);
var intersection = _.intersection(currentJsonID, newJsonID);
var final = _.difference(union, _.difference(currentJsonID, intersection);
预期的最终结果:
[
{
"id": "12",
"property1Name": "1"
"status": "inactive"
},
{
"id": "11",
"property1Name": "1"
"status": "inactive"
},
{
"id": "10",
"property1Name": "1"
"status": "inactive"
},
{
"id": "9",
"property1Name": "1"
"status": "active"
}
]
你从哪里得到的状态?我的意思是用同样的'id'? –
@NinaScholz你的意思是我从哪里获得预期最终结果的状态?如果newJson中的id确实存在于currentJson中,则使用相同id的currentJson状态,否则默认为inactive。 – vincentsty
你只对下划线解决方案感兴趣吗? –