Temporal.ZonedDateTime.prototype.epochNanoseconds
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 epochNanoseconds
Accessor-Eigenschaft von Temporal.ZonedDateTime
-Instanzen gibt ein BigInt
zurück, das die Anzahl der Nanosekunden darstellt, die seit dem Unix-Epoch (Mitternacht zu Beginn des 1. Januar 1970, UTC) bis zu diesem Zeitpunkt vergangen sind.
Der Set-Accessor von epochNanoseconds
ist undefined
. Sie können diese Eigenschaft nicht direkt ändern. Um ein neues Temporal.ZonedDateTime
-Objekt mit dem gewünschten neuen epochNanoseconds
-Wert zu erstellen, verwenden Sie die add()
- oder subtract()
-Methode mit der entsprechenden Dauer.
Ein Zeitpunkt kann nur ±108 Tage (etwa ±273.972,6 Jahre) um den Epoch herum darstellen, was ±8,64e21 Nanosekunden entspricht. Der Versuch, epochNanosecond
über diese Grenze hinaus zu setzen, führt zu einem RangeError
.
Beispiele
Verwendung von epochNanoseconds
const instant = Temporal.ZonedDateTime.from("2021-08-01T12:34:56.789Z[UTC]");
console.log(instant.epochNanoseconds); // 1627821296789000000n
const instant2 = Temporal.ZonedDateTime.from("1969-08-01T12:34:56.789Z[UTC]");
console.log(instant2.epochNanoseconds); // -13173903211000000n
Erstellen eines ZonedDateTime-Objekts aus einem epochNanoseconds-Wert
Sie können ein Temporal.ZonedDateTime
-Objekt aus einem epochNanoseconds
-Wert unter Verwendung des Temporal.ZonedDateTime()
-Konstruktors erstellen.
const epochNanoseconds = 1627821296789000000n;
const zdt = new Temporal.ZonedDateTime(epochNanoseconds, "UTC");
console.log(zdt.toString()); // 2021-08-01T12:34:56.789+00:00[UTC]
Spezifikationen
Specification |
---|
Temporal proposal # sec-get-temporal.zoneddatetime.prototype.epochnanoseconds |
Browser-Kompatibilität
BCD tables only load in the browser