timestampinfo.fr
Outils & documentation

LA DOCUMENTATION DU TEMPS

Timestamp en JavaScript

Date utilise des millisecondes. Voici comment convertir, formater et valider vos horodatages.

Secondes et millisecondes

Le constructeur Date attend des millisecondes lorsqu’on lui transmet un nombre. Multipliez des secondes Unix par 1 000.

const seconds = 1711972800;
const date = new Date(seconds * 1000);
console.log(date.toISOString());
// 2024-04-01T12:00:00.000Z

const nowMs = Date.now();
const nowSeconds = Math.floor(nowMs / 1000);

Parser une date avec un fuseau explicite

const date = new Date('2024-04-01T14:00:00+02:00');
if (Number.isNaN(date.getTime())) {
  throw new Error('Date invalide');
}
console.log(date.getTime()); // 1711972800000

Une date et une heure sans décalage peuvent être interprétées dans le fuseau du navigateur. Utilisez Z pour UTC ou un décalage comme +02:00. La validation de Date ne suffit pas à rejeter toutes les dates calendaires impossibles : certaines sont normalisées.

Afficher un fuseau géographique

const formatter = new Intl.DateTimeFormat('fr-FR', {
  dateStyle: 'full',
  timeStyle: 'long',
  timeZone: 'Europe/Paris'
});
console.log(formatter.format(date));

Précision et grandes valeurs

Date représente les instants à la milliseconde. Les timestamps en nanosecondes dépassent couramment la précision entière de Number : lisez-les comme chaînes, puis utilisez BigInt. Une conversion vers Date ne conserve pas les fractions de milliseconde.

Ne déduisez pas définitivement l’unité du nombre de chiffres. Une valeur courte peut représenter des millisecondes proches de 1970.

Références

MDN — Date · BigInt

Ouvrir le convertisseur