Here’s some code I found useful to sort a json object by timestamp.
// json object var dates = [ {"time":"October 11, 2011 11:13:00"},{"time":"October 20, 2011 11:13:00"},{"time":"October 30, 2011 11:13:00"},{"time":"October 01, 2011 11:13:00"}]; /* function sort by ascending *@param date1 first date to compare *@param date2 second date to compare */ var date_sort_asc = function (date1, date2) { if (new Date(date1.time) > new Date(date2.time)) return 1; if (new Date(date1.time) < new Date(date2.time)) return -1; return 0; }; /* function sort by descending *@param date1 first date to compare *@param date2 second date to compare */ var date_sort_desc = function (date1, date2) { if (new Date(date1.time) > new Date(date2.time)) return -1; if (new Date(date1.time) < new Date(date2.time)) return 1; return 0; }; // SORT THE DATES dates.sort(date_sort_asc); document.write('<h3>Ascending Order (oldest to newest)</h3>'); for (var i = 0; i < dates.length; i++) { document.write(new Date(dates[i].time) + '<br>'); } dates.sort(date_sort_desc); document.write('<h3>Descending order (newest to oldest)</h3>'); for (var i = 0; i < dates.length; i++) { document.write(new Date(dates[i].time) + '<br>'); }
Result:
Ascending Order (oldest to newest)
Sat Oct 01 2011 11:13:00 GMT-0700 (PST)
Tue Oct 11 2011 11:13:00 GMT-0700 (PST)
Thu Oct 20 2011 11:13:00 GMT-0700 (PST)
Sun Oct 30 2011 11:13:00 GMT-0700 (PST)
Descending order (newest to oldest)
Sun Oct 30 2011 11:13:00 GMT-0700 (PST)
Thu Oct 20 2011 11:13:00 GMT-0700 (PST)
Tue Oct 11 2011 11:13:00 GMT-0700 (PST)
Sat Oct 01 2011 11:13:00 GMT-0700 (PST)
December 27th, 2010 | Categories: Development | HTMLjavascript
