2017-08-01 17 views
0

私は2つのアレイ、oldBalancesとnewBalances アンダースコアオブジェクトの2つの配列を結合する方法は?

var oldBalances = [ 
    {name: 'vacation', value: '21'}, 
    {name: 'account', value: '200'}, 
] 

var newBalances = [ 
    {name: 'vacation', value: '25'}, 
    {name: 'order', value: '15'} 
] 

var allBalances = [] 

私はallBalances配列が結合されたすべての残高を持っているしたいのですが、古いもののバランス名は新しいものと同じである場合、私が撮りたいを持っています新しい私はこの方法でこの問題を解決するだろう

var allBalances = [ 
    {name: 'account', value: '200'}, 
    {name: 'vacation', value: '25'}, 
    {name: 'order', value: '15'} 
] 

答えて

0

1:

let allBalances = []; 

_([...newBalances, ...oldBalances]).each(balanceItem => { 
    if (_(allBalances).where({name: balanceItem.name).length) { 
     // skip adding key that is added already 
     continue; 
    } 
    allBalances.push(balanceItem); 
}); 
関連する問題