Temporal.ZonedDateTime.prototype.valueOf()
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 valueOf()-Methode von Temporal.ZonedDateTime-Instanzen löst einen TypeError aus, was verhindert, dass Temporal.ZonedDateTime-Instanzen implizit in primitive Werte umgewandelt werden, wenn sie in arithmetischen oder Vergleichsoperationen verwendet werden.
Syntax
valueOf()
Parameter
Keine.
Rückgabewert
Keine.
Ausnahmen
TypeError-
Wird immer ausgelöst.
Beschreibung
Da sowohl die primitive Konvertierung als auch die Zahlenkonvertierung valueOf() vor toString() aufrufen, würde ohne valueOf() ein Ausdruck wie yearMonth1 > yearMonth2 diese implizit als Zeichenketten vergleichen, was zu unerwarteten Ergebnissen führen könnte. Durch die Auslösung eines TypeError verhindern Temporal.ZonedDateTime-Instanzen solche impliziten Konvertierungen. Sie müssen sie explizit in Zahlen umwandeln, indem Sie Temporal.ZonedDateTime.prototype.epochNanoseconds verwenden oder die statische Methode Temporal.ZonedDateTime.compare() nutzen, um sie zu vergleichen.
Beispiele
>Arithmetische und Vergleichsoperationen auf Temporal.ZonedDateTime
Alle arithmetischen und Vergleichsoperationen auf Temporal.ZonedDateTime-Instanzen sollten die dedizierten Methoden verwenden oder sie explizit in primitive Werte umwandeln.
const zdt1 = Temporal.ZonedDateTime.from(
"2022-01-01T00:00:00[America/New_York]",
);
const zdt2 = Temporal.ZonedDateTime.from(
"2022-07-01T00:00:00[America/New_York]",
);
zdt1 > zdt2; // TypeError: can't convert ZonedDateTime to primitive type
Temporal.ZonedDateTime.compare(zdt1, zdt2); // -1
zdt2 - zdt1; // TypeError: can't convert ZonedDateTime to primitive type
zdt2.since(zdt1).toString(); // "PT4343H"
Spezifikationen
| Specification |
|---|
| Temporal> # sec-temporal.zoneddatetime.prototype.valueof> |
Browser-Kompatibilität
Loading…