Temporal.ZonedDateTime.prototype.withTimeZone()
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 withTimeZone()
-Methode von Temporal.ZonedDateTime
-Instanzen gibt ein neues Temporal.ZonedDateTime
-Objekt zurück, das denselben Moment wie dieses Datum und diese Uhrzeit, jedoch in der neuen Zeitzone, darstellt. Da alle Temporal
-Objekte unveränderlich gestaltet sind, fungiert diese Methode im Wesentlichen als Setter für die timeZoneId
-Eigenschaft der Datum-Uhrzeit.
Um die Eigenschaften der Datum-Uhrzeit-Komponenten zu ersetzen, verwenden Sie die with()
-Methode. Um den Kalender zu ersetzen, verwenden Sie die withCalendar()
-Methode.
Syntax
withTimeZone(timeZone)
Parameter
timeZone
-
Entweder ein String oder eine
Temporal.ZonedDateTime
-Instanz, die die zu verwendende Zeitzone darstellt. Wenn es eineTemporal.ZonedDateTime
-Instanz ist, wird ihre Zeitzone verwendet. Wenn es ein String ist, kann es sich um einen benannten Zeitzonen-Bezeichner, einen Offset-Zeitzonen-Bezeichner oder einen Datum-Uhrzeit-String handeln, der einen Zeitzonen-Bezeichner oder einen Offset enthält (siehe Zeitzonen und Offsets für weitere Informationen).
Rückgabewert
Ein neues Temporal.ZonedDateTime
-Objekt, das denselben Moment wie dieses Datum und diese Uhrzeit, jedoch in der neuen Zeitzone, darstellt.
Ausnahmen
TypeError
-
Wird ausgelöst, wenn
timeZone
weder ein String noch eineTemporal.ZonedDateTime
-Instanz ist. RangeError
-
Wird ausgelöst, wenn der Zeitzonenname ungültig ist.
Beispiele
Verwendung von withTimeZone()
const meetingTime = Temporal.ZonedDateTime.from(
"2021-08-01T12:00[America/New_York]",
);
const meetingTimeInParis = meetingTime.withTimeZone("Europe/Paris");
console.log(meetingTimeInParis.toString()); // 2021-08-01T18:00:00+02:00[Europe/Paris]
Ersetzen der Zeitzone bei Beibehaltung derselben Wanduhrzeit
In dem seltenen Fall, dass Sie die Wanduhrzeit beibehalten, aber die Zeitzone ändern möchten (was zu einem anderen Moment führt), konvertieren Sie es zuerst in ein Temporal.PlainDateTime
:
const meetingTime = Temporal.ZonedDateTime.from(
"2021-08-01T12:00[America/New_York]",
);
const meetingTimeInParis = meetingTime
.toPlainDateTime()
.toZonedDateTime("Europe/Paris");
console.log(meetingTimeInParis.toString()); // 2021-08-01T12:00:00+02:00[Europe/Paris]
Spezifikationen
Specification |
---|
Temporal # sec-temporal.zoneddatetime.prototype.withtimezone |