Temporal.ZonedDateTime.prototype.epochMilliseconds

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 epochMilliseconds Zugriffsproperty von Temporal.ZonedDateTime-Instanzen gibt eine Ganzzahl zurück, die die Anzahl der Millisekunden darstellt, die seit der Unix-Epoche (Mitternacht zu Beginn des 1. Januar 1970, UTC) bis zu diesem Moment vergangen sind. Sie entspricht dem Teilen von epochNanoseconds durch 1e6 und dem Runden nach unten des Ergebnisses.

Die Set-Zugriffsproperty von epochMilliseconds ist undefined. Sie können diese Eigenschaft nicht direkt ändern. Um ein neues Temporal.ZonedDateTime-Objekt mit dem gewünschten neuen epochMilliseconds-Wert zu erstellen, siehe unten.

Beispiele

Verwendung von epochMilliseconds

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

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

Erstellen eines ZonedDateTime-Objekts aus einem epochMilliseconds-Wert

Sie können ein Temporal.ZonedDateTime-Objekt aus einem epochMilliseconds-Wert erstellen, indem Sie zuerst ein Temporal.Instant-Objekt mit Temporal.Instant.fromEpochMilliseconds() erstellen und es dann mit Temporal.Instant.prototype.toZonedDateTimeISO() in ein Temporal.ZonedDateTime-Objekt umwandeln:

js
const epochMilliseconds = 1627821296789;
const instant = Temporal.Instant.fromEpochMilliseconds(epochMilliseconds);
const zdt = instant.toZonedDateTimeISO("UTC");
console.log(zdt.toString()); // 2021-08-01T12:34:56.789+00:00[UTC]

Alternativ können Sie den Temporal.ZonedDateTime()-Konstruktor verwenden, aber die Millisekunden vorher in Nanosekunden umrechnen:

js
const epochMilliseconds = 1627821296789;
const epochNanoseconds = BigInt(epochMilliseconds) * 1e6n;
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.epochmilliseconds

Browser-Kompatibilität

BCD tables only load in the browser

Siehe auch