我有这样的数据库集合:
{
data: [
item: {
date: "2022-03-22T08:10:37.023Z"
},
item: {
date: "2022-03-22T08:11:04.023Z"
},
...
]
}
我还有变量start_date
和end_date
,它们是momentjs
日期。我可以用isAfter()
和isBefore()
方法比较日期。
如何获取日期在start_date
和end_date
之间的所有项目?
注意:date: "..."
是string
,而不是ISODate
对象。
CCD_ 11是一个数组。
我还可以将日期string
转换为momentjs
进行比较。
- 看起来您的
date
是ISO格式的,因此当前构造函数应该接受它,例如
moment(date);
要证明它,请将其转换为一个普通的jsDate
对象,并将其打印为
moment("2022-03-22T08:11:04.023Z").toDate()
// Tue Mar 22 2022 10:11:04 GMT+0200 (Israel Standard Time)
- 您可能需要查看isBetween
moment(date).isBetween(start_date, end_date);
如果date
在这两个时刻之间,则返回true。
- 之后,您可以使用类似
.filter
的东西来删除不在您的范围内的数据项,仅此而已