Extraits de timestamp Unix en JavaScript
Exemples JavaScript pour obtenir le timestamp actuel, convertir des secondes ou millisecondes Unix en objets Date et formater la sortie avec les API intégrées du navigateur.
Math.floor(Date.now() / 1000)Date.now()new Date().getTime()
// or
+new Date()new Date(1700000000 * 1000)new Date(1700000000 * 1000).toISOString()
// → "2023-11-15T06:13:20.000Z"new Date(1700000000 * 1000).toLocaleString()
new Date(1700000000 * 1000).toLocaleString("en-US", { timeZone: "America/New_York" })Bases des horodatages en JavaScript
JavaScript Date stocke le temps en millisecondes depuis l'époque Unix. Utilisez Date.now() quand vous avez besoin de millisecondes et Math.floor(Date.now() / 1000) quand une API attend des secondes Unix.
Conversions JavaScript courantes
Pour convertir un horodatage Unix en secondes vers un Date, multipliez par 1000 avant d'appeler new Date(). Utilisez toISOString() pour une sortie UTC, toUTCString() pour une sortie de style HTTP et Intl.DateTimeFormat quand vous avez besoin d'un fuseau précis.
Notes de production pour JavaScript
Les bugs d'horodatage en JavaScript viennent généralement du mélange des millisecondes de Date avec les secondes de l'API. Gardez les objets Date en bordure de l'interface et ne faites transiter par les API que des nombres simples ou des chaînes ISO une fois l'unité explicite. Pour afficher l'heure locale, utilisez Intl.DateTimeFormat avec un fuseau nommé afin que le résultat soit reproductible d'un navigateur et d'un serveur à l'autre.
- Utilisez Date.now() quand vous avez besoin de millisecondes epoch pour des minuteurs, des événements d'analytique ou le stockage du navigateur
- Utilisez Math.floor(Date.now() / 1000) quand un point de terminaison backend attend des secondes Unix
- Utilisez new Date(seconds * 1000) quand une API envoie des secondes
- Utilisez toISOString() pour des chaînes UTC capables de faire l'aller-retour via JSON
Références JavaScript associées
FAQ
- Date.now() renvoie-t-il des secondes Unix ?
- Non. Date.now() renvoie des millisecondes. Divisez par 1000 et arrondissez vers le bas quand une API, une base de données ou un outil en ligne de commande attend des secondes Unix.
- Dois-je stocker des objets Date en JSON ?
- Non. Convertissez d'abord la valeur en nombre ou en chaîne ISO 8601. JSON n'a pas de type Date natif, donc des valeurs explicites sont plus faciles à déboguer et à comparer.