我有一个jQuery JSON请求,在该JSON数据中,我希望能够按唯一值排序。所以我有
{
"people": [{
"pbid": "626",
"birthDate": "1976-02-06",
"name": 'name'
}, {
"pbid": "648",
"birthDate": "1987-05-22",
"name": 'name'
}, .....
所以,到目前为止,我有这个
function(data) {
$.each(data.people, function(i, person) {
alert(person.birthDate);
})
}
但是,我完全不知道如何有效地获取唯一的birthDate,并按年份(或按任何其他个人数据进行的排序)进行排序。
我正在尝试做到这一点,并对此有所提高(我希望这是可能的)。
谢谢
最佳答案
我不确定性能如何,但是基本上我正在使用对象作为键/值字典。我还没有测试过,但是应该在循环中进行排序。
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
}
}