2017-06-21 64 views
-1

我在一個大陣列中有數據。我想爲每個遊戲創建單獨的數組,這個大數組有幾行遊戲ID:999.將陣列與其他陣列分開數據

對象{123:Object {username:tom,gameid:999},111 :對象{用戶名:搶,遊戲ID:999},222: 對象{用戶名:喬恩,遊戲ID:1000} 333 {對象名:亨利,遊戲ID:1000}}

我沒有好主意。

結果應該是這樣的:

AllGameIdArry [ 
    array[gameid:999]: [{ username: rob},{ username: tom}] 
    array[gameid:1000]: [{ username: rob},{ username: tom}] 
    array[gameid:1001]: [{ username: rob},{ username: tom}] 
    array[gameid:1002]: [{ username: rob},{ username: tom}] 
] 

回答

0
var x = {123: { username: `tom`, gameid: 999 }, 111: { username: `rob`, gameid: 999 }, 222: { username: `jon`, gameid: 1000 }, 333: { username: `henry`, gameid: 1000 }} 

var final = {}; 
for (key of Object.keys(x)) { 
if (!final[`gameid:${x[key].gameid}`]) 
    final[`gameid:${x[key].gameid}`] = []; 
final[`gameid:${x[key].gameid}`].push({username: x[key].username}); 
} 

你的第一個例子是不太好,但我已經做了,你可能會想,至少,學習,以更好的方式做