JSFiddle - React, Tailwind, and code Playground
JavaScript
var data = [{"id":1, "start":"2018-10-10", "end":"2018-11-10"},
{"id":1, "start":"2018-11-10", "end":"2018-12-10"},
{"id":2, "start":"2018-11-22", "end":"2018-11-30"}];
let result = data.sort((a,b) => new Date(a.start) > new Date(b.start)).reduce(function (r, a) {
if(!r[a.id] || r[a.id][0].id !== a.id){
r[a.id] = r[a.id] || [];
r[a.id].push(a);
}
return r;
}, Object.create(null));
console.log(result)