Le décalage UTC change entre deux minuits

Le NIST indique le 8 mars et le 1er novembre pour les changements d’heure américains de 2026. Dans America/New_York, de minuit le 8 mars (-05:00) à minuit le 9 (-04:00), il s’écoule 23 heures ; de minuit le 1er novembre (-04:00) à minuit le 2 (-05:00), 25 heures. Chaque paire est séparée de 1 jour du calendrier. Ces exemples concernent les changements d’une heure de cette région.

Durée entre minuits consécutifs à New York : 8–9 mars, 23 heures ; 1–2 novembre, 25 heures
Schéma d’exemples calculés directement. Les longueurs des barres suivent le rapport 23:25 ; il ne s’agit pas d’observations d’horloges.

NIST: Daylight Saving Time

Conservez les décalages pour calculer la durée écoulée

Le JavaScript ci-dessous interprète chaque instant avec son décalage explicite et divise l’écart en millisecondes par 3,600,000. Les résultats sont 23 et 25. Ne supprimez pas les décalages et ne remplacez pas l’écart entre dates par des heures divisées par 24 puis arrondies. Un décalage fixe seul ne contient pas les règles des futurs changements d’une région.

Le calculateur de dates Moyoutil traite YYYY-MM-DD comme minuit UTC. Les deux exemples donnent 1 avec l’option d’inclusion de la date finale désactivée. Il ne calcule pas la durée régionale écoulée. Le code ci-dessous est un exemple JavaScript distinct.

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')); // 25

ECMAScript: Date Time String Format

Questions fréquemment posées

Tous les jours d’une région à heure d’été durent-ils 23 ou 25 heures ?

Non. Ces exemples concernent deux dates de changement à New York. Ne les appliquez pas à d’autres dates ou régions. La durée réellement écoulée nécessite la région visée et un décalage valide pour chaque instant.