我如何按时间戳排序这个数组?最快的方法是什么(数组有很多条目)?
我的阵列
myList = new Array();
myList[0] = {};
myList[0]['title'] = 'I am really new';
myList[0]['timestamp'] = 1317039046;
myList[0]['date'] = '2011-09-26T12:10:46+00:00';
myList[1] = {};
myList[1]['title'] = 'I am the oldest';
myList[1]['timestamp'] = 1315656646;
myList[1]['date'] = '2011-09-10T12:10:46+00:00';
myList[2] = {};
myList[2]['title'] = 'I am older';
myList[2]['timestamp'] = 1316866246;
myList[2]['date'] = '2011-09-24T12:10:46+00:00';
myList[3] = {};
myList[3]['title'] = 'I am old';
myList[3]['timestamp'] = 1316952646;
myList[3]['date'] = '2011-09-25T12:10:46+00:00';
答案 0 :(得分:57)
myList.sort(function(x, y){
return x.timestamp - y.timestamp;
})
myList
是一个JavaScript数组,支持sort
方法。此方法接受函数作为参数,该函数根据返回的值对数组进行排序。
目前,排序算法将首先放置具有最低时间戳的元素。如果要在另一个方向上对数组进行排序,请交换x.timestamp
和y.timestamp
。