且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

jQuery的 - 作为排序依据时间戳数组的最快方法

更新时间:2023-02-24 15:02:31

  myList.sort(函数(X,Y){
    返回x.timestamp - y.timestamp;
})

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

目前,排序算法将把具有最低时间戳第一元素。交换 x.timestamp y.timestamp 如果你想在其他方向上的数组进行排序。

how can i sort this array by timestamp and what is the fastest way (array has many many entries)?

my array

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

example
http://jsbin.com/ejagup/2/edit#preview

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

myList is a JavaScript array, which supports the sort method. This method accepts a function as argument, which sorts the array according to the returned value.

Currently, the sort algorithm will place the element with the lowest timestamp first. Swap x.timestamp and y.timestamp if you want to sort the array in the other direction.