JSFiddle - React, Tailwind, and code Playground
JavaScript
let obj = {
0: {title: "событие 5", start: "02:30", end: "06:00", week: "Thursday"},
1: {title: "событие 1", start: "06:00", end: "15:30", week: "Thursday"},
2: {title: "событие 2", start: "15:30", end: "21:00", week: "Thursday"},
3: {title: "событие 3", start: "21:00", end: "00:00", week: "Thursday"},
4: {title: "событие 4", start: "00:00", end: "02:30", week: "Thursday"}
}
const parseTime = (str) => {
const time = parseInt(str.replace(':', ''), 10);
return time >= 600 ? time : time + 2400
}
const result = Object.values(obj).sort((a, b) => {
const timeA = parseTime(a.start);
const timeB = parseTime(b.start);
return timeA === timeB ? 0 : timeA < timeB ? -1 : 1
})
console.log(result)