Voici une méthode standard pour sérialiser la date sous forme de chaîne ISO 8601 en JavaScript:
var now = new Date();
console.log( now.toISOString() );
// outputs '2015-12-02T21:45:22.279Z'
J'ai besoin de la même sortie, mais sans millisecondes. Comment puis-je sortir 2015-12-02T21:45:22Z
?
Manière simple:
console.log( now.toISOString().split('.')[0]+"Z" );
Voici la solution:
var now = new Date();
var str = now.toISOString();
var res = str.replace(/\.[0-9]{3}/, '');
alert(res);
Trouve le. (point) et supprime 3 caractères.
Utilisez slice pour supprimer la partie non désirée
var now = new Date();
alert( now.toISOString().slice(0,-5)+"Z");
ou probablement l'écraser avec cela? (ceci est un polyfill modifié de here )
function pad(number) {
if (number < 10) {
return '0' + number;
}
return number;
}
Date.prototype.toISOString = function() {
return this.getUTCFullYear() +
'-' + pad(this.getUTCMonth() + 1) +
'-' + pad(this.getUTCDate()) +
'T' + pad(this.getUTCHours()) +
':' + pad(this.getUTCMinutes()) +
':' + pad(this.getUTCSeconds()) +
'Z';
};