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 Zugriffs-Eigenschaft von Temporal.ZonedDateTime-Instanzen gibt einen BigInt zurück, der die Anzahl der Nanosekunden darstellt, die seit der Unix-Epoche (Mitternacht zu Beginn des 1. Januar 1970, UTC) bis zu diesem Zeitpunkt vergangen sind.

Die setzende Zugriffsmethode 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 stattdessen den new Temporal.ZonedDateTime()-Konstruktor.

Ein Zeitpunkt kann nur ±108 Tage (etwa ±273.972,6 Jahre) um die Epoche herum darstellen, was ±8,64e21 Nanosekunden entspricht. Der Versuch, epochNanoseconds außerhalb dieser Grenze festzulegen, löst einen RangeError aus.

Beispiele

Verwendung von epochNanoseconds

js
const zdt = Temporal.ZonedDateTime.from("2021-08-01T12:34:56.789Z[UTC]");
console.log(zdt.epochNanoseconds); // 1627821296789000000n

const zdt2 = Temporal.ZonedDateTime.from("1969-08-01T12:34:56.789Z[UTC]");
console.log(zdt2.epochNanoseconds); // -13173903211000000n

Erstellen eines ZonedDateTime-Objekts aus einem epochNanoseconds-Wert

Sie können ein Temporal.ZonedDateTime-Objekt aus einem epochNanoseconds-Wert mithilfe des Temporal.ZonedDateTime()-Konstruktors erstellen.

js
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

Siehe auch