【发布时间】:2014-01-26 17:11:13
【问题描述】:
我有以下字典,我必须使用这种格式因为我没有服务器端的权力
{"1":{"aov":0,"oo":1,"ot":"Cem-Merve","pi":87},"2":{"aov":100,"oo":2,"ot":"Murat-Pelin","pi":88},"3":{"aov":0,"oo":3,"ot":"Fevzi-Azbiye","pi":85},"4":{"aov":0,"oo":4,"ot":"Burak-Gizem","pi":86},"21":{"aov":100,"oo":21,"ot":"Murat","pi":84,"ro":2},"22":{"aov":0,"oo":22,"ot":"Pelin","pi":83,"ro":2}}
我需要用 Javascript 按字母顺序对它进行排序,就像
{"1":{"aov":0,"oo":1,"ot":"Cem-Merve","pi":87},"2":{"aov":100,"oo":2,"ot":"Murat-Pelin","pi":88},"21":{"aov":100,"oo":21,"ot":"Murat","pi":84,"ro":2},"22":{"aov":0,"oo":22,"ot":"Pelin","pi":83,"ro":2},"3":{"aov":0,"oo":3,"ot":"Fevzi-Azbiye","pi":85},"4":{"aov":0,"oo":4,"ot":"Burak-Gizem","pi":86}}
我尝试过类似的方法,但没有希望:
function sortObject(o) {
var sorted = {},
key, a = [];
for (key in o) {
if (o.hasOwnProperty(key)) {
a.push(key);
}
}
a.sort();
for (key = 0; key < a.length; key++) {
sorted[a[key]] = o[a[key]];
}
return sorted;
}
任何想法我该如何执行?
【问题讨论】:
-
Javascript 将是一个好的开始。试一试,遇到困难时再回帖。
-
我已经被卡住了,这就是我问这个的原因
-
JavaScript 对象不可排序,您需要将其转换为 Array,然后使用 Array.prototype.sort 对项目进行排序。
-
您不能对对象的属性进行排序。
-
这个答案应该让你朝着正确的方向前进:stackoverflow.com/a/5200010/1402923
标签: javascript jquery sorting dictionary alphabetical