Je dois afficher la date et l'heure UTC actuelle sous forme de chaîne au format suivant :
YYYY/mm/dd hh:m:sec
Comment y parvenir avec Javascript ?
Je dois afficher la date et l'heure UTC actuelle sous forme de chaîne au format suivant :
YYYY/mm/dd hh:m:sec
Comment y parvenir avec Javascript ?
Vous pouvez le construire manuellement :
var m = new Date();
var dateString = m.getUTCFullYear() +"/"+ (m.getUTCMonth()+1) +"/"+ m.getUTCDate() + " " + m.getUTCHours() + ":" + m.getUTCMinutes() + ":" + m.getUTCSeconds();
et pour forcer deux chiffres sur les valeurs qui le nécessitent, vous pouvez utiliser quelque chose comme ceci :
("0000" + 5).slice(-2)
Ce qui ressemblerait à ceci :
var m = new Date();
var dateString =
m.getUTCFullYear() + "/" +
("0" + (m.getUTCMonth()+1)).slice(-2) + "/" +
("0" + m.getUTCDate()).slice(-2) + " " +
("0" + m.getUTCHours()).slice(-2) + ":" +
("0" + m.getUTCMinutes()).slice(-2) + ":" +
("0" + m.getUTCSeconds()).slice(-2);
console.log(dateString);
const str = (new Date()).toISOString().slice(0, 19).replace(/-/g, "/").replace("T", " ");
Il utilise la fonction intégrée Date.toISOString()
, coupe les ms, remplace les tirets par des barres obliques et remplace le T par un espace pour aller de '2019-01-05T09:01:07.123'
à '2019/01/05 09:01:07'
.
const now = new Date();
const offsetMs = now.getTimezoneOffset() * 60 * 1000;
const dateLocal = new Date(now.getTime() - offsetMs);
const str = dateLocal.toISOString().slice(0, 19).replace(/-/g, "/").replace("T", " ");
Avec le format de date jQuery :
$.format.date(new Date(), 'yyyy/MM/dd HH:mm:ss');
https://github.com/phstc/jquery-dateFormat
Prendre plaisir
J'ai écrit une bibliothèque simple pour manipuler l'objet date JavaScript. Tu peux essayer ceci :
var dateString = timeSolver.getString(new Date(), "YYYY/MM/DD HH:MM:SS.SSS")
Bibliothèque ici : https://github.com/sean1093/timeSolver
Pas testé, mais quelque chose comme ça :
var now = new Date();
var str = now.getUTCFullYear().toString() + "/" +
(now.getUTCMonth() + 1).toString() +
"/" + now.getUTCDate() + " " + now.getUTCHours() +
":" + now.getUTCMinutes() + ":" + now.getUTCSeconds();
Bien sûr, vous devrez compléter les heures, les minutes et les secondes à deux chiffres ou vous obtiendrez parfois des heures étranges comme "2011/12/2 19:2:8".
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.