Aide technique
Unix Timestamp vers date : secondes, millisecondes et UTC expliqués
Convertissez un Unix timestamp en date. Secondes vs millisecondes, UTC vs heure locale, ISO 8601, et le chemin inverse d’une date vers le temps epoch.
Un Unix timestamp représente le temps par rapport à l’epoch Unix : 1970-01-01 00:00:00 UTC. Il est souvent stocké en secondes depuis l’epoch, ou en millisecondes depuis l’epoch.
Pour convertir correctement, il faut d’abord connaître l’unité. 1720000000 secondes, c’est 2024-07-03 09:46:40 UTC. 1720000000000 millisecondes, c’est le même instant.
Le timestamp identifie un instant. UTC, l’heure locale ou une zone IANA ne changent que la façon d’afficher cet instant.
Ceci est un guide de conversion : timestamp vers date, date vers timestamp, UTC vs local, et ISO 8601. Si une valeur devient soudain une date de 1970, c’est en général un décalage secondes/millisecondes — voir Unix Timestamp en secondes vs millisecondes : pourquoi la date affiche 1970.
Qu’est-ce qu’un Unix Timestamp ?
Unix timestamp, Unix time et epoch time désignent souvent le temps écoulé depuis 1970-01-01 00:00:00 UTC. Le nombre n’est pas une chaîne de date formatée avec une étiquette de fuseau. Le même instant peut s’afficher à des heures différentes en UTC, à New York, à Tokyo ou à Séoul. Les Unix timestamps ne sont pas toujours en secondes — les millisecondes sont courantes en pratique.
Qu’est-ce que l’epoch Unix ?
L’epoch Unix est 1970-01-01 00:00:00 UTC. Le timestamp 0 est cet instant. Un timestamp positif est après l’epoch. Certains systèmes autorisent un timestamp négatif pour un moment avant l’epoch, mais le langage et la plage de dates varient.
Mon timestamp est-il en secondes ou en millisecondes ?
1720000000, ce sont des secondes ; 1720000000000, des millisecondes ; c’est le même instant. Indice pratique : environ 10 chiffres indiquent souvent des secondes, environ 13 des millisecondes. Le nombre de chiffres n’est qu’une heuristique. Dates passées ou futures, autres unités ou un epoch personnalisé peuvent paraître différents. Convertisseur date et heure convertit en secondes, millisecondes ou auto (≤10 chiffres en secondes, ≥13 en millisecondes) — choisissez l’unité quand vous la connaissez.
Pourquoi la mauvaise unité donne-t-elle la mauvaise date ?
JavaScript Date attend des millisecondes. Passer 1720000000 comme s’il s’agissait de millisecondes donne 1970-01-20 21:46:40 UTC. Traiter des millisecondes comme des secondes, ou l’inverse, aboutit à une date très différente. Pour le diagnostic 1970, voir Unix Timestamp en secondes vs millisecondes : pourquoi la date affiche 1970.
new Date(1720000000);
// 1970-01-20T21:46:40.000Z
Comment convertir un Unix timestamp en secondes
Multipliez les secondes par 1000 pour obtenir des millisecondes. JavaScript Date est basé sur les millisecondes, donc utilisez new Date(timestamp * 1000).
const timestamp = 1720000000;
const date = new Date(timestamp * 1000);
date.toISOString();
// 2024-07-03T09:46:40.000Z
Comment convertir un timestamp en millisecondes
Passez les millisecondes à Date directement. Ne multipliez pas une deuxième fois par 1000 un timestamp déjà en millisecondes.
const timestamp = 1720000000000;
const date = new Date(timestamp);
date.toISOString();
// 2024-07-03T09:46:40.000Z
Pourquoi le même timestamp affiche-t-il une autre heure ?
Un Unix timestamp est un seul instant. L’afficher en UTC, en heure locale ou dans une zone IANA choisie change le cadran. Pour 1720000000000, UTC est 2024-07-03 09:46:40. America/New_York à cette date est 2024-07-03 05:46:40 (EDT). Asia/Seoul est 2024-07-03 18:46:40 (UTC+9). Ces valeurs New York et Séoul viennent de Intl, pas d’un slogan de décalage fixe.
Un Unix timestamp contient-il un fuseau horaire ?
Non. Il ne stocke ni America/New_York ni Asia/Seoul. Le timestamp identifie un instant. Un fuseau s’applique quand vous formatez cet instant en date et heure lisibles. L’epoch est défini par rapport à UTC ; le nombre lui-même n’est pas « un champ de fuseau UTC ».
Unix Timestamp et ISO 8601
1720000000 et 2024-07-03T09:46:40Z peuvent représenter le même instant. Unix est une valeur numérique de temps écoulé. ISO 8601 est une chaîne date-heure lisible, qui peut se terminer par Z (UTC) ou par un décalage numérique. Z signifie UTC ; on dit parfois Zulu. Ce n’est pas le même format.
Comment obtenir le Unix timestamp actuel ?
En JavaScript, Date.now() est en millisecondes. Math.floor(Date.now() / 1000) est en secondes. N’écrivez pas un « maintenant » figé dans un article ; il avance.
Date.now();
Math.floor(Date.now() / 1000);
Peut-on reconvertir une date en Unix timestamp ?
Oui. À partir d’une chaîne ISO UTC explicite, getTime() renvoie des millisecondes ; divisez par 1000 et arrondissez vers le bas pour les secondes.
const date = new Date("2024-07-03T09:46:40Z");
date.getTime();
// 1720000000000
Math.floor(date.getTime() / 1000);
// 1720000000
Attention aux formats de date ambigus
03/07/2024 peut signifier le 7 mars ou le 3 juillet selon la région. Préférez une date et une heure de style ISO avec fuseau ou décalage. Convertisseur date et heure refuse les dates numériques ambiguës comme 01/02/2026 et demande un sélecteur de date ou une valeur de style ISO.
Et l’heure d’été ?
Un Unix timestamp ne stocke pas un drapeau d’heure d’été. L’affichage local applique les règles de la zone. America/New_York utilise des décalages différents en hiver et en été, donc « New York est UTC-5 » n’est pas toujours vrai.
Les Unix timestamps incluent-ils les secondes intercalaires ?
Le temps POSIX/Unix habituel ne compte pas les secondes intercalaires comme des secondes SI supplémentaires sur une échelle continue. Les plateformes peuvent différer. Pour une conversion quotidienne, vous pouvez ignorer ce détail.
Erreurs fréquentes de conversion de Unix timestamp
Ces confusions produisent la mauvaise date ou le mauvais cadran :
Secondes traitées comme millisecondes
Une valeur moderne en secondes aboutit alors près de 1970 dans JavaScript Date.
Millisecondes traitées comme secondes
La date saute loin dans le futur.
Traiter 10 ou 13 chiffres comme une loi
Le nombre de chiffres est un indice, pas une garantie.
Confondre UTC et l’heure locale
L’instant est le même ; l’horloge affichée peut différer.
Supposer qu’un fuseau est dans le nombre
Les noms IANA s’appliquent à l’affichage, ils ne sont pas stockés dans le timestamp.
Dates ambiguës, slogans d’heure d’été, ou ×1000 de trop
Utilisez une saisie de style ISO. Ne multipliez pas une deuxième fois un timestamp en millisecondes.
Exemples UTC vérifiés
Ces heures UTC ont été calculées, pas devinées :
| Entrée | Unité | UTC |
|---|---|---|
| 0 | secondes | 1970-01-01 00:00:00 |
| 1720000000 | secondes | 2024-07-03 09:46:40 |
| 1720000000000 | millisecondes | 2024-07-03 09:46:40 |
| 1720000000 | millisecondes | 1970-01-20 21:46:40 |
Un guide simple pour décider de la conversion
Si la source nomme l’unité, utilisez-la. Sinon, le nombre de chiffres est un indice — vérifiez ensuite que la date paraît plausible. Convertissez les secondes en millisecondes si l’API a besoin de ms. Choisissez UTC, local ou une zone IANA pour l’affichage. ISO 8601 est utile pour stocker et échanger.
- Vous avez un Unix timestamp
- Unité indiquée ? Utilisez-la ; sinon, vérifiez la magnitude
- Secondes ? ×1000 si l’API a besoin de millisecondes
- Millisecondes ? Utilisez-les telles quelles dans une API en ms
- Afficher en UTC, local, ou zone IANA
- Besoin d’une chaîne ? ISO 8601 peut convenir
Le timestamp identifie un point dans le temps. UTC, l’heure locale ou un fuseau ne décident que de la façon dont cet instant est montré à une personne.
Convertir des Unix timestamps dans le navigateur
NEXNARA Convertisseur date et heure convertit les secondes et millisecondes Unix, affiche UTC, l’heure locale et ISO 8601, et convertit entre fuseaux IANA.
Le mode Unix prend en charge les secondes, les millisecondes, l’unité auto, l’heure actuelle et date vers timestamp. Le mode fuseau cherche des noms IANA, utilise la zone du navigateur et applique des décalages Intl qui tiennent compte de l’heure d’été. Le mode format a une sortie lisible selon la région, un affichage 12/24 et un garde-fou contre les dates ambiguës. La différence de dates est un mode à part.
La conversion utilise les API Date et Intl du navigateur. Les valeurs hors de ce que Date peut représenter sont refusées. L’unité auto ne devine pas les valeurs à 11–12 chiffres ; choisissez secondes ou millisecondes.
La conversion de date et de timestamp se fait dans votre navigateur. Les saisies ne sont pas envoyées à un serveur NEXNARA pour la conversion. Les publicités et d’autres fonctions du site utilisent encore le réseau.
Collez un timestamp dans Convertisseur date et heure et comparez UTC, l’heure locale et ISO 8601 avant de choisir une unité.
FAQ
Comment convertir un Unix timestamp en date ?
Connaissez l’unité. En JavaScript, pour les secondes : new Date(n * 1000). Pour les millisecondes : new Date(n). Puis formatez en UTC, local ou zone.
Le Unix timestamp est-il en secondes ou en millisecondes ?
Les deux existent. Environ 10 chiffres indiquent souvent des secondes et environ 13 des millisecondes, mais c’est une heuristique, pas une règle.
Pourquoi mon timestamp affiche-t-il 1970 ?
En général, une valeur en secondes a été lue comme millisecondes. Voir Unix Timestamp en secondes vs millisecondes : pourquoi la date affiche 1970.
Un Unix timestamp est-il toujours UTC ?
L’epoch est défini par rapport à UTC, et le nombre identifie un instant. Le fuseau d’affichage est séparé. Ce n’est pas un « champ de fuseau UTC » stocké.
Un Unix timestamp contient-il un fuseau horaire ?
Non. Il ne porte pas d’identifiant IANA. Le fuseau s’applique quand vous formatez l’instant.
Comment convertir une date en Unix timestamp ?
À partir d’une chaîne ISO UTC, date.getTime() est en millisecondes ; Math.floor(date.getTime() / 1000) est en secondes.