Der UTC-Offset wechselt zwischen Mitternachten
NIST nennt den 8. März und den 1. November als US-Zeitumstellungstermine für 2026. In America/New_York liegen zwischen Mitternacht am 8. März (-05:00) und am 9. März (-04:00) 23 Stunden; zwischen Mitternacht am 1. November (-04:00) und am 2. November (-05:00) 25 Stunden. Beide Paare liegen im Kalender 1 Tag auseinander. Diese Beispiele gelten für die einstündigen Umstellungen dieser Region.
Offsets beim Berechnen verstrichener Zeit beibehalten
Das folgende JavaScript interpretiert jeden Zeitpunkt mit seinem expliziten Offset und teilt die Millisekundendifferenz durch 3,600,000. Die Ergebnisse sind 23 und 25. Entfernen Sie die Offsets nicht und ersetzen Sie den Kalenderabstand nicht durch verstrichene Stunden geteilt durch 24 und gerundet. Ein fester Offset allein enthält keine zukünftigen Umstellungsregeln einer Region.
Moyoutils Datumsrechner behandelt YYYY-MM-DD als Mitternacht UTC. Beide Beispiele ergeben 1, wenn das Enddatum nicht mitgezählt wird. Er berechnet keine regionale verstrichene Zeit. Der folgende Code ist ein separates JavaScript-Beispiel.
const hours = (start, end) =>
(Date.parse(end) - Date.parse(start)) / 3600000;
console.log(hours(
'2026-03-08T00:00:00-05:00',
'2026-03-09T00:00:00-04:00')); // 23
console.log(hours(
'2026-11-01T00:00:00-04:00',
'2026-11-02T00:00:00-05:00')); // 25Häufig gestellte Fragen
Dauert jeder Tag in einer Region mit Sommerzeit 23 oder 25 Stunden?
Nein. Diese Beispiele betreffen zwei Umstellungstage in New York. Übertragen Sie die Ergebnisse nicht auf andere Daten oder Regionen. Die tatsächlich verstrichene Zeit erfordert die gewünschte Region und einen gültigen Offset für jeden Zeitpunkt.