Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

Temporal.Duration.prototype.toJSON()

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

Die toJSON()-Methode von Temporal.Duration-Instanzen gibt eine Zeichenkette zurück, die diese Dauer im gleichen ISO 8601-Format darstellt wie ein Aufruf von toString(). Sie soll implizit durch JSON.stringify() aufgerufen werden.

Syntax

js
toJSON()

Parameter

Keine.

Rückgabewert

Eine Zeichenkette, die die gegebene Dauer im ISO 8601-Format darstellt, mit so viel Nachkommastellen wie notwendig, um die Dauer genau darzustellen.

Beschreibung

Die toJSON()-Methode wird automatisch von JSON.stringify() aufgerufen, wenn ein Temporal.Duration-Objekt in eine Zeichenkette umgewandelt wird. Diese Methode soll im Allgemeinen standardmäßig Temporal.Duration-Objekte nützlich während der JSON-Serialisierung serialisieren, die dann mit der Temporal.Duration.from()-Funktion beim Deserialisieren mit JSON.parse() als reviver verwendet werden können.

Beispiele

Verwendung von toJSON()

js
const duration = Temporal.Duration.from({ hours: 1, minutes: 30, seconds: 15 });
const durationStr = duration.toJSON(); // 'PT1H30M15S'
const d2 = Temporal.Duration.from(durationStr);

JSON-Serialisierung und -Parsing

Dieses Beispiel zeigt, wie Temporal.Duration ohne zusätzlichen Aufwand als JSON serialisiert werden kann und wie man es zurückparsen kann.

js
const duration = Temporal.Duration.from({ hours: 1, minutes: 30, seconds: 15 });
const jsonStr = JSON.stringify({ data: duration }); // '{"data":"PT1H30M15S"}'
const obj = JSON.parse(jsonStr, (key, value) => {
  if (key === "data") {
    return Temporal.Duration.from(value);
  }
  return value;
});

Spezifikationen

Specification
Temporal
# sec-temporal.duration.prototype.tojson

Browser-Kompatibilität

Siehe auch