如何按年齡值對對象進行排序?如何在JavaScript中對多維對象進行排序
我有以下對象結構
{
"men": {
"20114": {
"id": "20114",
"name": "Peter",
"age": "21"
},
"28957": {
"id": "28957",
"name": "Paul",
"age": "20"
}
},
"women": {
"8957": {
"id": "8957",
"name": "Rose",
"age": "24"
},
"2178": {
"id": "2178",
"name": "Sara",
"age": "22"
}
},
}
我知道,我可以排序像這樣
groups.sort(function(a, b) {
return b.age - a.age;
});
但如何陣列與對象做到這一點?
你不能,對象鍵沒有定義的順序。您必須將對象傳遞給數組,或者使用鍵創建一個新數組並根據對象數據進行排序 – juvian
正如@juvian所說,對象沒有爲它們定義的順序。所以你會想把''男人''和''女人'''換成對象數組,然後用上面的方法進行排序。 –
我同意@juvian。你可以有一個'gender'屬性來創建一個數組。 – Jaco