Start · Sprachen · JavaScript · Referenz · Temporal.ZonedDateTime.from()

Temporal.ZonedDateTime.from()

Methode

Erzeugt ein neues <code>Temporal.ZonedDateTime</code> aus einem anderen <code>ZonedDateTime</code>, einem Objekt mit Datums-, Zeit- und Zeitzonenfeldern oder einem RFC-9557-String.

seit JavaScript Temporal (ES2026-Kandidat): Firefox 139+, Chrome/E Kategorie: method-property

Signatur

Temporal.ZonedDateTime.from(info, options)

Beschreibung

Temporal.ZonedDateTime.from() ist die statische Fabrikmethode für Temporal.ZonedDateTime. Ein solches Objekt beschreibt einen genauen Zeitpunkt, der fest an eine IANA-Zeitzone (z. B. "Europe/Berlin") und einen Kalender gebunden ist. Der Konstruktor new Temporal.ZonedDateTime(epochNanoseconds, timeZone) erwartet Nanosekunden als BigInt. from() nimmt dagegen gut lesbare Eingaben an: einen String wie 2024-07-15T09:30:00+02:00[Europe/Berlin] oder ein Objekt mit Feldern wie year, month, day, hour und timeZone.

Verwende die Methode, wenn du eine Uhrzeit in einer bestimmten Zeitzone (Wanduhrzeit) in einen eindeutigen Zeitpunkt umrechnen willst. Typische Fälle sind Termine, Kalendereinträge, Flugzeiten oder gespeicherte Zeitstempel mit Zeitzone. Die Sommerzeit wird automatisch berücksichtigt.

Mit den Optionen legst du fest, was passiert, wenn es eine Uhrzeit nicht gibt (Zeitumstellung vorwärts) oder wenn sie doppelt vorkommt (Zeitumstellung zurück), Option disambiguation. Außerdem regeln sie, wie ein Offset im String behandelt wird, der nicht zur Zeitzone passt (offset), und wie Feldwerte außerhalb des gültigen Bereichs behandelt werden (overflow).

Übergibst du ein bestehendes Temporal.ZonedDateTime, bekommst du eine unabhängige Kopie mit demselben Zeitpunkt, derselben Zeitzone und demselben Kalender. Da Temporal-Objekte unveränderlich sind, brauchst du das selten. Nützlich ist es vor allem, um Eingaben unbekannten Typs einheitlich umzuwandeln.

Parameter

Name Typ Default Beschreibung
$info Pflicht Temporal.ZonedDateTime | Object | string Die Quelle. Entweder ein Temporal.ZonedDateTime (wird kopiert), ein Objekt mit den Feldern timeZone (Pflicht), year (oder era + eraYear), month (oder monthCode), day und optional hour, minute, second, millisecond, microsecond, nanosecond, offset und calendar, oder ein RFC-9557-String, der zwingend eine Zeitzonen-Annotation in eckigen Klammern enthält, z. B. [Europe/Berlin].
$options Object {} Optionales Objekt mit den folgenden Eigenschaften:
  • overflow: "constrain" (Standard) setzt ungültige Feldwerte auf den nächsten gültigen Wert, "reject" wirft einen RangeError. Gilt nur für Objekt-Eingaben.
  • disambiguation: "compatible" (Standard), "earlier", "later" oder "reject". Legt fest, wie nicht existierende oder doppelt vorkommende Wanduhrzeiten aufgelöst werden.
  • offset: "reject" (Standard bei from()), "use", "ignore" oder "prefer". Legt fest, was passiert, wenn der angegebene Offset nicht zur Zeitzone passt.

Rückgabewert

Typ
Temporal.ZonedDateTime
Beschreibung
Ein neues, unveränderliches Temporal.ZonedDateTime-Objekt. Es wirft einen TypeError bei ungültigem Eingabetyp oder fehlender timeZone und einen RangeError bei ungültigen Werten, unbekannter Zeitzone, fehlender Zeitzonen-Annotation im String oder wenn eine Option auf "reject" steht und der jeweilige Fall eintritt.