Jquery 按字母顺序排列JSON对象并返回JSON对象

Jquery 按字母顺序排列JSON对象并返回JSON对象,jquery,sorting,Jquery,Sorting,我从cities.php发送一个json字符串,如下所示: [{"name":"Boston","len":1,"cid":"292"},{"name":"Miami","len":1,"cid":"243"},{"name":"Washington","len":1,"cid":"36"},{"name":"Alabama","len":1,"cid":"5"},{"name":"New York","len":1,"cid":"435"}] var cities = {}; $.getJS

我从cities.php发送一个json字符串,如下所示:

[{"name":"Boston","len":1,"cid":"292"},{"name":"Miami","len":1,"cid":"243"},{"name":"Washington","len":1,"cid":"36"},{"name":"Alabama","len":1,"cid":"5"},{"name":"New York","len":1,"cid":"435"}]
var cities = {};
$.getJSON('http://mypage.com/json/cities.php', function(data){ 
    $.each(data, function (k, vali) {
        cities[vali.cid] = vali.name;
    });
});
{ 
5: 'Alabama', 
36: 'Washington', 
243: 'Miamai', 
292: 'Boston',
435: 'New York'
};
然后我在my cities.html中检索它,如下所示:

[{"name":"Boston","len":1,"cid":"292"},{"name":"Miami","len":1,"cid":"243"},{"name":"Washington","len":1,"cid":"36"},{"name":"Alabama","len":1,"cid":"5"},{"name":"New York","len":1,"cid":"435"}]
var cities = {};
$.getJSON('http://mypage.com/json/cities.php', function(data){ 
    $.each(data, function (k, vali) {
        cities[vali.cid] = vali.name;
    });
});
{ 
5: 'Alabama', 
36: 'Washington', 
243: 'Miamai', 
292: 'Boston',
435: 'New York'
};
我将json放入一个javascript对象中,它工作得非常完美,结果如下:

[{"name":"Boston","len":1,"cid":"292"},{"name":"Miami","len":1,"cid":"243"},{"name":"Washington","len":1,"cid":"36"},{"name":"Alabama","len":1,"cid":"5"},{"name":"New York","len":1,"cid":"435"}]
var cities = {};
$.getJSON('http://mypage.com/json/cities.php', function(data){ 
    $.each(data, function (k, vali) {
        cities[vali.cid] = vali.name;
    });
});
{ 
5: 'Alabama', 
36: 'Washington', 
243: 'Miamai', 
292: 'Boston',
435: 'New York'
};
这几乎可以,但是。。。它不是按字母顺序排列的吗

在进入城市{}对象之前,我需要按名称对其进行排序

我如何做到这一点


希望能提前得到帮助和感谢

编写一个比较函数

function compare(a,b) {
  if (a.name < b.name)
     return -1;
  if (a.name > b.name)
    return 1;
  return 0;
}

看看那篇文章吧,它都显示了对象数组[{}],但我的只是一个对象{},没有一个显示了如何在排序后将其返回到对象?数据是一个对象数组我尝试了这个解决方案,但没有运气。。。似乎是美元。每个部分都会在之后进行排序。。。有什么想法吗?数组应该正确排序,也许问题是你如何使用cities对象