Ant*_*hea 40 javascript arrays sorting date
我试图对每个对象包含的对象数组进行排序
var recent = [{id: "123",age :12,start: "10/17/13 13:07"} , {id: "13",age :62,start: "07/30/13 16:30"}];
Run Code Online (Sandbox Code Playgroud)
日期格式为: mm/dd/yy hh:mm
我想按照最近的第一个日期顺序排序.如果日期相同,则应按时排序.
我尝试了下面的排序功能.但它没有用.
recent.sort(function(a,b))
{
a = new Date(a.start);
b = new Date(b.start);
return a-b;
});
Run Code Online (Sandbox Code Playgroud)
另外我应该如何遍历对象进行排序?就像是:
for (var i = 0; i < recent.length; i++)
{
recent[i].start.sort(function (a, b)
{
a = new Date(a.start);
b = new Date(b.start);
return a-b;
} );
}
Run Code Online (Sandbox Code Playgroud)
数组中可以有任意数量的对象.
Chr*_*les 57
正如在评论中指出的那样,最近的定义是不正确的javascript.
但假设日期是字符串:
var recent = [
{id: 123,age :12,start: "10/17/13 13:07"},
{id: 13,age :62,start: "07/30/13 16:30"}
];
Run Code Online (Sandbox Code Playgroud)
然后像这样排序:
recent.sort(function(a,b) {
return new Date(a.start).getTime() - new Date(b.start).getTime()
});
Run Code Online (Sandbox Code Playgroud)
recent.sort(function(a,b) { return new Date(a.start).getTime() - new Date(b.start).getTime() } );
Run Code Online (Sandbox Code Playgroud)
ES6:
recent.sort((a,b)=> new Date(b.start).getTime()-new Date(a.start).getTime());
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
66501 次 |
| 最近记录: |