Javascript-同时按日期和字母顺序对数组进行排序

Javascript - Sort array by date and alphabetically in the same time

本文关键字:顺序 数组 排序 日期 Javascript-      更新时间:2023-09-26

我有一个数组,其中包含包含标题和日期的对象。

[{
   title: 'Some title'
   date: '12.00 PM 17/10/2014'
},
...
]

我需要同时按日期和字母顺序对这些值进行排序,结果应该如下所示:

1.00 PM - Btitle
1.00 PM - Bztitle
1.00 PM - Ctitle
3.00 PM - Atitle
3.00 PM - Btitle

我应该创建额外的数组来记住状态等吗?或者可以在单个sort方法中进行。

您可以在单个sort方法中完成。它的骨骼是:

yourArray.sort(function(a, b) {
    var adate = /* ...parse the date in a.date... */,
        bdate = /* ...parse the date in b.date... */,
        rv = adate - bdate;
    if (rv === 0) {
        rv = a.title.localeCompare(b.title);
    }
    return rv;
});

我将把解析这种奇怪的日期格式留给读者练习。。。