jQuery - 按时间戳排序数组的最快方法

时间:2011-09-26 12:25:09

标签: javascript jquery sorting timestamp

我如何按时间戳排序这个数组?最快的方法是什么(数组有很多条目)?

我的阵列

  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';

示例
http://jsbin.com/ejagup/2/edit#preview

1 个答案:

答案 0 :(得分:57)

myList.sort(function(x, y){
    return x.timestamp - y.timestamp;
})

myList是一个JavaScript数组,支持sort方法。此方法接受函数作为参数,该函数根据返回的值对数组进行排序。

目前,排序算法将首先放置具有最低时间戳的元素。如果要在另一个方向上对数组进行排序,请交换x.timestampy.timestamp