Hallo.
ich habe folgende JavaScript Funktion unten um zu checken, ob sich 2 Zeiten (start - end) überlappen. Das Funtioniert gut. Mein Problem ist jetzt, dass ich z.B: 6 Zeiten (start - end) haben kann und ich alles checken möchte, ob sich irgendein Intervall mit einem anderen überlappt.
Weiß jemand, wie ich das am besten lösen kann. Ich müsste ja z.B. meine 6 Zeiten in 2er Arrays aufsplitten, und da jede Kombination. Weiß da jemand eie bessere Lösung?
Danke! Hannes
function overlapping(a, b) {
function getMinutes(s) {
var p = s.split(':').map(Number);
return p[0] * 60 + p[1];
}
return getMinutes(a.end) > getMinutes(b.start) && getMinutes(b.end) > getMinutes(a.start);
}
document.write(overlapping({ start: '00:00', end: '00:00' }, { start: '00:00', end: '00:00' }) + '<br>');
document.write(overlapping({ start: '00:00', end: '02:00' }, { start: '00:00', end: '02:00' }) + '<br>');