2011-09-06 62 views
2

我从YouTube JSON请求得到(该对象的小解析后)这些字符串(这应该代表日期时间):如何在Javascript中订购日期时间字符串?

2009-12-16T15:51:57.000Z 
2010-11-04T10:01:15.000Z 
2010-11-04T14:00:04.000Z 
2010-11-04T11:12:36.000Z 
2010-11-04T10:24:26.000Z 
2010-11-04T12:05:58.000Z 
2010-04-30T13:28:08.000Z 
2010-11-17T13:57:27.000Z 

其实我需要订购这些列表(降序),连续服用近期视频出版。 但是我怎样才能订购这些日期时间? JS上有本地方法吗?

+1

如果字符串数组中,只是对它们进行排序下降。 ISO8601格式日期的美妙之处在于纯文本分类的工作原理! –

回答

1

你可以使用这个默认的排序方法,因为日期是完全格式化的做一些整理(年,月,日,小时,分钟,秒)。如果这是相反的话,这将会困难得多。退房sort例如:

var unsortedArray = [ 
    "2009-12-16T15:51:57.000Z", 
    "2010-11-04T10:01:15.000Z", 
    "2010-11-04T14:00:04.000Z", 
    "2010-11-04T11:12:36.000Z" ]; 

var sortedArray = unsortedArray.sort(); 

如果你想反向(降序)排序,添加.reverse()来排序的阵列。

1

您要求降序排序。快速的方法是使用反转。

http://jsfiddle.net/6pLHP/

a = [ 
    "2009-12-16T15:51:57.000Z", 
    "2010-11-04T10:01:15.000Z", 
    "2010-11-04T14:00:04.000Z", 
    "2010-11-04T11:12:36.000Z", 
    "2010-11-04T10:24:26.000Z", 
    "2010-11-04T12:05:58.000Z", 
    "2010-04-30T13:28:08.000Z", 
    "2010-11-17T13:57:27.000Z" 
]; 
alert(JSON.stringify(a.sort().reverse())); 
相关问题