我有下一個結構的一個JSON對象:爲什麼這個長的return語句在Javascript中不起作用?
{
"matters": [
{
"title": "Systems",
"date": "23/08/2010",
"score": 5
},
....
]
}
我想排序與sort()
功能這個數據。我可以通過使用score
字段來完成,但我無法使用date
字段進行排序。這是我目前使用:
$.getJSON('js/data.json', function(data) {
// data now contains one node with all the matters
$.each(data, function(key, val) {
// val now contains one matter per nodes
val.sort(function (a,b) {
return
parseInt(a.date.substring(6,10)+a.date.substring(3,5)+a.date.substring(0,2)) -
parseInt(b.date.substring(6,10)+b.date.substring(3,5)+b.date.substring(0,2));
});
// Here I get the same array not sorted!
}
});
兩個parseInt()
函數返回與此格式的整數:我用警報檢查,如果我分裂的日期正確
if date=="23/08/2010" => 20100823
,它是罰款。無論如何,我無法排列數組。
我使用this JSON文件測試代碼。
我在做什麼錯?
您可以發佈兩個日期的例子那種不正確的?或者數組根本就沒有排序? –
適合我:http://jsfiddle.net/nEPTt/ –
@CrazyTrain你是對的。它在那裏完美地工作。如何可能我在我的* localhost *上有完全相同的代碼,並且它不工作?! – Lucio