toLocaleString -> Formatieren
Hannes Weninger
- javascript
Hallo,
ich verwende in meiner Applikation folgendes:
Date.prototype.toJSON = function () { return this.toLocaleString('de-DE'); }
Damit werden die ganzen js- Dates so formatiert:
"14.5.2016, 23:59:00"
Ich würde aber diese format benötigen:
"2015-10-07T00:00:00.000Z"
Meine Frage wär jetzt, ob es für this.toLocaleString('de-DE'); eine Möglichkeit gibt, dass man das so fomatiert (mit T dazwischen)?
Danke! Hannes
Hallo
Ich würde aber diese format benötigen:
"2015-10-07T00:00:00.000Z"
ob es dazu eine fertige Methode gibt, weiß ich nicht. Ich habe mir den Zeitstring mit den getUTC…-Methoden des Date-Objekts selbst zusammengebastelt. Hier mal ein Auszug aus einem meiner Scripte:
var trimmNumber = function(n) {
if(n<10) n = "0" + n;
return n;
}
…
var date = new Date(…);
gpx += '<time>' +date.getUTCFullYear()+'-'+trimmNumber(date.getUTCMonth()+1)+'-'+trimmNumber(date.getUTCDate())+'T' +trimmNumber(date.getUTCHours())+':'+trimmNumber(date.getUTCMinutes())+':'+trimmNumber(date.getUTCSeconds())+'Z</time>\n';
Gruß
Jürgen
Tach!
Date.prototype.toJSON = function () { return this.toLocaleString('de-DE'); }
Ich würde aber diese format benötigen:
"2015-10-07T00:00:00.000Z"
Meine Frage wär jetzt, ob es für this.toLocaleString('de-DE'); eine Möglichkeit gibt, dass man das so fomatiert (mit T dazwischen)?
Nein, weil das ja keine lokale Formatierung ist. Du bekommst die Formatierung gemäß ISO 8601, indem du es unterlässt, die Methode toJSON() vom Date-Objekt zu überschreiben.
Wenn du es nicht für JSON brauchst, dann gibt es noch die Methode toISOString(), ggf. mit Polyfill, wenn es auch mit IE kleiner 9 laufen soll.
dedlfix.