如何按年龄值对对象进行排序?如何在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