我有一些形狀如下的對象。Javascript合併基於關鍵字的兩個對象
[{
product: 'ABC',
productId: 'AB123',
batch: 'BA1',
price: '12'
}, {
product: 'ABC',
productId: 'AB123',
batch: 'BA2',
price: '15'
}, {
product: 'XYZ',
productId: 'AB124',
batch: 'XY1',
price: '124'
}]
我想如果密鑰對(product
,和productId
)被mathced,在下面的格式的對象合併爲一個單一的對象在數組中。
[{
product: 'ABC',
productId: 'AB123',
batch: ['BA1', 'BA2'],
price: ['12', '15']
}, {
product: 'XYZ',
productId: 'AB124',
batch: 'XY1',
price: '124'
}]
我該如何在lodash或純javascript中做到這一點。
分享你的研究可以幫助大家。告訴我們你試過了什麼,以及它爲什麼不符合你的需求。這表明你已經花時間去嘗試幫助自己,它使我們避免重申明顯的答案,最重要的是它可以幫助你得到更具體和相關的答案!另請參閱[如何問](http://stackoverflow.com/questions/how-to-ask) – Cerbrus
預期的結果對象包含不同的結構。如果產品有多個條目,那麼您有批量和價格的數組,但如果沒有,則您只希望獲得單個值。 - 不應該產生的對象遵循共同的格式?即:始終爲批次/價格陣列,或者甚至可以是包含價格和批次對象的單個數組,以便知道哪個批次屬於哪個價格? – Nope