【发布时间】:2022-02-23 06:49:01
【问题描述】:
我检索了一个对象数组,我需要对其进行格式化以使其能够被 Google Charts 接受。初始数据是这样的
[
{
"itemOne":111,
"itemTwo":1,
"itemThree":"2022-02-01T00:00:00.000Z"
},
{
"itemOne":222,
"itemTwo":2,
"itemThree":"2022-01-01T00:00:00.000Z"
},
{
"itemOne":333,
"itemTwo":3,
"itemThree":"2021-12-01T00:00:00.000Z"
},
]
要开始格式化,我执行以下操作
const chartData = data.lastYear.map(
(item) => ([item.itemThree, item.itemTwo, item.itemOne]),
);
现在我只剩下这个了。
[
["2022-02-01T00:00:00.000Z", 1, 111],
["2022-01-01T00:00:00.000Z", 2, 222],
["2021-12-01T00:00:00.000Z", 3, 333],
]
我一直在尝试按日期对上述内容进行排序。我目前的尝试很糟糕,显然行不通。
const chartData = data.lastYear.map(
(item) => ([item.itemThree, item.itemTwo, item.itemOne]),
).sort((a, b) => {
return new Date(b.date) - new Date(a.date);
});
那么按日期对所有内容进行排序的最佳方法是什么?
谢谢
【问题讨论】:
-
究竟是什么不起作用?
-
对不起,我很傻,不同的是,并非所有日期都是 2022 年!
-
要对映射数组进行排序,
data.sort((a, b) => a[0] - b[0]就足够了。
标签: javascript date sorting