【发布时间】:2017-06-08 06:29:44
【问题描述】:
我有一个具有不同时间戳的对象数组,它们是来自 MomentJS 的 Moment-Objects。
[
{
"name": "A",
"eventDateTime": "2016-12-09 07:50:17",
},
{
"name": "B",
"eventDateTime": "2016-12-09 06:50:17",
},
{
"name": "C",
"eventDateTime": "2016-12-09 07:01:17",
}
]
现在我需要做的(通常这些对象更多)是首先对它们进行排序,然后按 15 分钟的间隔分组。
这样排序我应该得到
[
{
"name": "B",
"eventDateTime": "2016-12-09 06:50:17",
},
{
"name": "C",
"eventDateTime": "2016-12-09 07:01:17",
},
{
"name": "A",
"eventDateTime": "2016-12-09 07:50:17",
}]
然后我需要从时间为 06:50:17 的第一个对象开始对它们进行分组。所以这将是我应该添加所有对象的第一个组,在 06:50:17 和 07:05:17 之间。由于数组已排序,因此我可以迭代直到一个对象早于 07:05:17。
总而言之,这并不难实现,但它应该尽可能高效。我们使用具有许多功能的 Lodash.js。我知道 groupBy 方法,但不知道如何 A)使用 MomentJS 和 B)在其中定义一个函数,该函数检查间隔。
你们有什么建议吗?
【问题讨论】:
标签: javascript html typescript momentjs lodash