2017-10-28 175 views
0

所以我想group一些保留by business id。我正在尋找的最終結果是這樣的:TypeScript關聯數組

[[businessID1] => [Object1,Object2的,Object3],[businessID2] => [Object1,Object2的], [businessID3] => [Object1 ,對象2]

我當前的代碼:

let groups = new Array; 
this.reservations.map(function (value) { 
    groups[value.businessID] = value; 
}); 

所以現在它不工作...因爲每一個它要時間重新寫陣列關鍵。我是新來的打字稿/ JS世界,任何幫助表示讚賞。

+0

這可能重複:HTTPS:/ /stackoverflow.com/questions/41554523/group-by-javascript-object-keys-array –

回答

1

如果該值不存在,創建一個空數組,並與push附加價值給它:

if (groups[value.businessID] === undefined) { 
    groups[value.businessID] = []; 
} 
groups[value.businessID].push(value); 

或者更簡潔:

(groups[value.businessID] = groups[value.businessID] || []).push(value);