我想要比较日期和时间来操作我的数据。我需要检查对象内的
下面是场景描述:
我尝试这样做,但如何在此处使用 moment 来比较哪个是最新的呢?
我该如何使用
updated_at
键以确定哪个是最新的数据。下面是场景描述:
// below is my data to be manipulat
[{
"is_latest": "",
"created_at": "2021-09-21T21:24:05.000Z",
"updated_at": "2021-09-21T17:53:29.000Z"
}, {
"is_latest": "",
"created_at": "2021-09-22T21:24:05.000Z",
"updated_at": "2021-09-22T17:53:29.000Z"
}, {
"is_latest": "",
"created_at": "2021-09-29T21:24:05.000Z",
"updated_at": "2021-09-29T17:53:29.000Z" // this is the latest data
}]
我尝试这样做,但如何在此处使用 moment 来比较哪个是最新的呢?
for (var i = 0; i < data.length; i++) {
if (data[i].updated_at > data[i + 1].updated_at) {
data.is_latest = "true"
}
}
但是我没有得到如下预期的结果。
[{
"is_latest": "false",
"created_at": "2021-09-21T21:24:05.000Z",
"updated_at": "2021-09-21T17:53:29.000Z"
}, {
"is_latest": "false",
"created_at": "2021-09-22T21:24:05.000Z",
"updated_at": "2021-09-22T17:53:29.000Z"
}, {
"is_latest": true,
"created_at": "2021-09-29T21:24:05.000Z",
"updated_at": "2021-09-29T17:53:29.000Z"
}]
我该如何使用
map()
或reduce()
来实现这个?
localeCompare
而不是>
或<
。 - Heretic Monkeymap
,而是要使用reduce
。 - Heretic Monkey"false"
(一个字符串值),而最新的条目具有true
作为布尔值,而不是作为字符串,这是您原始代码设置的方式。 - Heretic Monkey