我有这样的对象的数组,数组的清理接触对象(simplefied版本,实际的数组有更多的数据):创建联系人数据
[
{
id: '1',
name: 'Joe',
description: 'Student',
locations: [ {
type: 'home',
value: '123'
} ]
},
{
id: '1',
name: 'Joe',
description: 'Farmer',
locations: [ {
type: 'home',
value: '456'
} ]
},
{
id: '1',
name: 'Joe',
description: '',
locations: [ {
type: 'home',
value: '123'
} ]
}
]
我如何使用JavaScript(lodash )创建以下内容? :
{
id: '1',
name: 'Joe',
description: 'Farmer',
locations: [ {
type: 'home',
value: '123'
}, {
type: 'home',
value: '456'
} ]
}
目标是创建联系人数据数组的清理联系人对象。所以它需要替换单个属性,如名称和描述,以防它们为空。如果在de locations数组中找不到它,则推入位置等位置。使用_.merge我也得到了一定的成效,问题是,合并总是与去年值覆盖和犯规推新值,所以结果会是这样的:
{
id: '1',
name: 'Joe',
description: '',
locations: [ {
type: 'home',
value: '123'
}]
}
你如何确定描述应该是'农民',而不是'Stu凹痕'? – Sacho 2014-10-30 13:05:00
这是我需要做的牺牲,没有办法指出优先权。 – Tristan 2014-10-30 13:06:35