如何在jquery中从json获取不同的值

我有一个jquery json请求,在json数据中我希望能够按唯一值排序。 所以我有

 { “人”:[{ “pbid”: “626”, “生日”: “1976年2月6日”, “名”: '姓名'},{ “pbid”: “648”, “生日”:” 1987年5月22" 日, “名”: '姓名'},.....

所以,到目前为止,我有这个

 function(数据){
           $ .each(data.people,function(i,person){
               警报(person.birthDate);

 }

但是,我完全失去了如何有效地获得唯一的birthDates,并按年份(或任何其他个人数据)进行排序。

我正在努力做到这一点,并且有效率(我希望这是可能的)。

谢谢

我不确定这将是多么高效,但基本上我使用一个对象作为键/值字典。 我没有测试过这个,但是应该在循环中进行排序。

function(data) { var birthDates = {}; var param = "birthDate" $.each(data.people, function() { if (!birthDates[this[param]]) birthDates[this[param]] = []; birthDates[this[param]].push(this); }); for(var d in birthDates) { // add d to array here // or do something with d // birthDates[d] is the array of people } } 
 function(data){ var arr = new Array(); $.each(data.people, function(i, person){ if (jQuery.inArray(person.birthDate, arr) === -1) { alert(person.birthDate); arr.push(person.birthDate); } }); } 

这是我的看法:

 function getUniqueBirthdays(data){ var birthdays = []; $.each(data.people, function(){ if ($.inArray(this.birthDate,birthdays) === -1) { birthdays.push(this.birthDate); } }); return birthdays.sort(); }