【发布时间】:2019-12-16 01:08:03
【问题描述】:
我对函数排序日期有点问题。我想按 ASC 或 DESC 对所有日期进行排序,但排序不正确。
我的约会
let a = [
"03/12/2019", "17/10/2020", "02/12/2019", "08/12/2019", "13/02/2020",
"23/03/2020", "18/11/2020", "29/02/2020", "05/12/2019", "03/06/2020",
"06/05/2020", "09/09/2020", "28/10/2020", "07/04/2020", "27/04/2020",
"28/05/2020", "29/12/2019", "31/10/2020", "23/09/2020", "25/12/2019",
"14/01/2020", "30/09/2020", "18/05/2020", "14/06/2020", "25/04/2020",
"19/08/2020", "26/03/2020", "19/05/2020", "15/03/2020", "11/10/2020",
"25/04/2020", "16/12/2019", "14/08/2020", "19/08/2020", "28/02/2020",
"01/01/2020", "07/06/2020", "17/11/2020", "22/05/2020", "31/07/2020",
"20/01/2020", "07/02/2020", "18/08/2020", "16/02/2020", "13/03/2020",
"21/12/2019", "02/03/2020", "24/07/2020", "01/05/2020", "31/01/2020",
"25/11/2020", "07/07/2020", "16/07/2020", "06/07/2020", "16/09/2020",
"29/07/2020", "19/06/2020", "09/08/2020", "25/08/2020", "21/02/2020",
"30/11/2019", "04/06/2020", "06/09/2020", "10/09/2020", "26/11/2020",
"22/07/2020", "21/05/2020", "25/07/2020", "05/01/2020", "17/06/2020",
"14/07/2020"
];
函数排序
b.sort((d1, d2) => new Date(d1).getTime() - new Date(d2).getTime());
或替代
b.sort((b, a) => {
if (b > a) {
return 1;
}
if (b < a) {
return -1;
}
return 0;
})
【问题讨论】:
-
致投票的人:您能为我们其他人解释一下 OP 的“排序不正确”是什么意思吗?
-
@John_ReinstateMonica 从上下文中可以清楚地看出,OP 的系统正在以
MM/dd/yyyy格式解释日期并按顺序对其进行排序,而不是将它们解析为dd/MM/yyyy,这是 OP 的意图。跨度>
标签: javascript sorting date