【发布时间】:2022-10-13 17:02:44
【问题描述】:
如何从对象中找出最小和最大日期? 目前,我得到一个这样的数组:最小日期应该是“2010-02-24”,最大日期应该是“2022-10-04”。
是否有任何内置功能可以做到这一点?提前致谢。
{
"2010":[
{
"id":1243,
"eventName":"sample_01",
"categoryType":"CUSTOM_NOTES",
"tags":"tag19",
"startDate":"2010-02-24",
"endDate":"2010-02-26",
"attachments":[
]
}
],
"2022":[
{
"id":1244,
"eventName":"sample_02",
"categoryType":"CUSTOM_NOTES",
"tags":"tag1, tag12, tag3, tag52, tag19",
"startDate":"2022-10-04",
"endDate":"2022-12-12",
"attachments":[
]
},
{
"id":1245,
"eventName":"hello_03",
"categoryType":"CUSTOM_NOTES",
"tags":"tag1, tag12",
"startDate":"2022-06-01",
"endDate":"2010-06-26",
"attachments":[
]
}
]
}
filterEventsByDates = () => {
const filterDateFn = (a, b) => a.startDate.localeCompare(b.startDate);
setDateFiltersToState(filterDateFn);
}
setDateFiltersToState = (filterDateFn) => {
this.setState(state => {
const events = {};
for (const [year, items] of Object.entries(state.events)) {
events[year] = items.slice().filter(filterDateFn);
}
return { events };
});
}
【问题讨论】:
-
你试过什么?在这里分享你的代码。
-
我尝试了使用带有 isAfter() 和 isBefore() 函数的时刻依赖的东西。但这对我不起作用。
标签: javascript reactjs react-native