Temporal.ZonedDateTime.prototype.toJSON()
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Experimentell: Dies ist eine experimentelle Technologie
Überprüfen Sie die Browser-Kompatibilitätstabelle sorgfältig vor der Verwendung auf produktiven Webseiten.
Die toJSON()
Methode von Instanzen des Temporal.ZonedDateTime
gibt eine Zeichenkette zurück, die dieses Datum-Uhrzeit-Wert im gleichen RFC 9557-Format darstellt, wie es der Aufruf von toString()
tun würde. Sie soll implizit durch JSON.stringify()
aufgerufen werden.
Syntax
toJSON()
Parameter
Keine.
Rückgabewert
Eine Zeichenkette, die das gegebene Datum-Uhrzeit-Wert im RFC 9557-Format darstellt, wobei die Kalenderannotation enthalten ist, wenn sie nicht "iso8601"
ist, und die Offset- und Zeitzonenannotation immer enthalten sind.
Beschreibung
Die toJSON()
Methode wird automatisch durch JSON.stringify()
aufgerufen, wenn ein Temporal.ZonedDateTime
Objekt als Zeichenkette umgewandelt wird. Diese Methode ist im Allgemeinen dafür gedacht, standardmäßig Temporal.ZonedDateTime
Objekte auf nützliche Weise während der JSON Serialisierung zu serialisieren, die dann mit der Temporal.ZonedDateTime.from()
Funktion als Wiederbeleber von JSON.parse()
deserialisiert werden können.
Beispiele
Verwendung von toJSON()
const zdt = Temporal.ZonedDateTime.from({
year: 2021,
month: 8,
day: 1,
timeZone: "America/New_York",
});
const zdtStr = zdt.toJSON(); // '2021-08-01T00:00:00-04:00[America/New_York]'
const zdt2 = Temporal.ZonedDateTime.from(zdtStr);
JSON-Serialisierung und -Parsing
Dieses Beispiel zeigt, wie Temporal.ZonedDateTime
ohne zusätzlichen Aufwand als JSON serialisiert werden kann und wie es zurückgeparst werden kann.
const zdt = Temporal.ZonedDateTime.from({
year: 2021,
month: 8,
day: 1,
timeZone: "America/New_York",
});
const jsonStr = JSON.stringify({ meeting: zdt }); // '{"meeting":"2021-08-01T00:00:00-04:00[America/New_York]"}'
const obj = JSON.parse(jsonStr, (key, value) => {
if (key === "meeting") {
return Temporal.ZonedDateTime.from(value);
}
return value;
});
Spezifikationen
Specification |
---|
Temporal proposal # sec-temporal.zoneddatetime.prototype.tojson |
Browser-Kompatibilität
BCD tables only load in the browser