ben*_*man 38 javascript arrays merge lodash
我有两个对象数组,表示具有标签和值的电子邮件地址:
var original = [
{
label: 'private',
value: 'private@johndoe.com'
},
{
label: 'work',
value: 'work@johndoe.com'
}
];
var update = [
{
label: 'private',
value: 'me@johndoe.com'
},
{
label: 'school',
value: 'schhol@johndoe.com'
}
];
Run Code Online (Sandbox Code Playgroud)
现在我想按label字段比较和合并两个数组,以便结果如下所示:
var result = [
{
label: 'private',
value: 'me@johndoe.com'
},
{
label: 'work',
value: 'work@johndoe.com'
},
{
label: 'school',
value: 'schol@johndoe.com'
}
]
Run Code Online (Sandbox Code Playgroud)
我怎么能这样做,例如使用lodash?
And*_*eas 82
_.unionBy():
此方法与_.union类似,不同之处在于它接受为每个数组的每个元素调用的iteratee,以生成计算唯一性的标准.结果值从发生值的第一个数组中选择.
var original = [
{ label: 'private', value: 'private@johndoe.com' },
{ label: 'work', value: 'work@johndoe.com' }
];
var update = [
{ label: 'private', value: 'me@johndoe.com' },
{ label: 'school', value: 'schol@johndoe.com' }
];
var result = _.unionBy(update, original, "label");
console.log(result);Run Code Online (Sandbox Code Playgroud)
<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.15.0/lodash.min.js"></script>Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
54145 次 |
| 最近记录: |