2017-10-04 81 views
-4

我有這樣的:如何用鍵推入對象數組?

public items: any[] = []; 

什麼我嘗試做:

this.events.map((event) => { 
     this.items[event.item] = event; 
    }); 

但我總是得到一個項目的每一個關鍵。任何建議如何推動它在這些項目?

在事件中,我得到這樣的:

{item: "9000225-01/17", type: "ORDER", status: "0", trackingId: 6033, statusName: "U pripremi", …} 
    {item: "9000225-01/17", type: "ORDER", status: "1", trackingId: 6035, statusName: "Primljena", …} 
    {item: "9000225-01/17", type: "ORDER", status: "8", trackingId: 6036, statusName: "TM ne postoji", …} 
    {item: "9000225-01/17-01", type: "ORDITEM", status: "0", trackingId: 6034, statusName: "U pripremi", …} 

,現在我想的是插入在items[event.item]所有對象具有從上面這個對象相同item

+0

你用'.push()'試過嗎? – JJJ

+0

我得到undefined this.items [event.item]但當我控制檯日誌event.item和this.items ai獲取數據 – None

回答

1

您需要使用.push

this.events.map(event => { 
    if (this.items[event.item]) { 
    this.items[event.item].push(event); 
    } else { 
    this.items[event.item] = [event]; 
    } 
}); 
+0

當我這樣做的項目是空的最後它不輸入在這個if語句 – None

+0

那麼你arae期待?我 – Sajeetharan

+0

我發佈我的對象什麼事件返回。我想在項目插入基於event.item,所以在我this.items我會有:[9000225-01/17],那裏我將有三個對象和[9000225-01/17-01]我將有一個對象 – None

0
this.items[event.item].push(event); 
+0

我得到undefined this.items [event.item] – None

+0

this.items [event.item] = [ ]。 this.items [event.item] .push();這是非常基本的javascript – Carsten

+0

我沒有看到event.item它在this.events.map – None