У меня есть массив объектов с разными TimeStamps, которые представляют собой Moment-Objects из MomentJS.Javascript Group Array by Interval
[
{
"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) Определить внутри него функцию, которая проверяет интервалы.
У вас есть несколько советов?