Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

Temporal.PlainDateTime.from()

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

Die statische Methode Temporal.PlainDateTime.from() erstellt ein neues Temporal.PlainDateTime-Objekt aus einem anderen Temporal.PlainDateTime-Objekt, einem Objekt mit Datums- und Zeiteigenschaften oder einem RFC 9557-String.

Syntax

js
Temporal.PlainDateTime.from(info)
Temporal.PlainDateTime.from(info, options)

Parameter

info

Eines der folgenden:

  • Eine Temporal.PlainDateTime-Instanz, die eine Kopie der Instanz erstellt.
  • Ein RFC 9557-String, der ein Datum, optional eine Zeit und optional einen Kalender enthält.
  • Ein Objekt mit Eigenschaften, die entweder von Temporal.PlainDate.from() (calendar, era, eraYear, year, month, monthCode, day) oder von Temporal.PlainTime.from() (hour, minute, second, millisecond, microsecond, nanosecond) erkannt werden. Die Informationen sollten explizit ein Jahr (als year oder era und eraYear), einen Monat (als month oder monthCode) und einen Tag angeben; andere sind optional und werden auf ihre Standardwerte gesetzt.
options Optional

Ein Objekt mit der folgenden Eigenschaft:

overflow Optional

Ein String, der das Verhalten angibt, wenn eine Datumskomponente außerhalb des gültigen Bereichs liegt (bei Verwendung des Objekts info). Mögliche Werte sind:

"constrain" (Standard)

Die Datumskomponente wird begrenzt auf den gültigen Bereich.

"reject"

Ein RangeError wird ausgelöst, wenn die Datumskomponente außerhalb des gültigen Bereichs liegt.

Rückgabewert

Ein neues Temporal.PlainDateTime-Objekt, das das Datum und die Zeit darstellt, die durch info im angegebenen calendar angegeben sind.

Ausnahmen

TypeError

Wird in einem der folgenden Fälle ausgelöst:

  • info ist kein Objekt oder String.
  • options ist kein Objekt oder undefined.
  • Die angegebenen Eigenschaften sind nicht ausreichend, um ein Datum eindeutig zu bestimmen. Sie müssen in der Regel ein year (oder era und eraYear), einen month (oder monthCode) und einen day angeben.
RangeError

Wird in einem der folgenden Fälle ausgelöst:

  • Die angegebenen Eigenschaften, die die gleiche Komponente spezifizieren, sind inkonsistent.
  • Die angegebenen nicht-numerischen Eigenschaften sind ungültig; zum Beispiel, wenn monthCode kein gültiger Monatscode in diesem Kalender ist.
  • Die angegebenen numerischen Eigenschaften liegen außerhalb des gültigen Bereichs und options.overflow ist auf "reject" gesetzt.
  • Die Informationen liegen nicht im darstellbaren Bereich, der ±(108 + 1) Tage oder etwa ±273.972,6 Jahre ab der Unix-Epoche umfasst.

Beispiele

Erstellen eines PlainDateTime aus einem Objekt

js
// Year + month + day + hour + minute + second
const dt = Temporal.PlainDateTime.from({
  year: 2021,
  month: 7,
  day: 1,
  hour: 12,
  minute: 34,
  second: 56,
});
console.log(dt.toString()); // "2021-07-01T12:34:56"

Erstellen eines PlainDateTime aus einem String

js
const dt = Temporal.PlainDateTime.from("2021-07-01T12:34:56");
console.log(dt.toLocaleString()); // "7/1/2021, 12:34:56 PM" (assuming en-US locale)

Für weitere Beispiele, insbesondere bezüglich unterschiedlicher Kalender und Überlaufeinstellungen, siehe Temporal.PlainDate.from() und Temporal.PlainTime.from().

Spezifikationen

Specification
Temporal
# sec-temporal.plaindatetime.from

Browser-Kompatibilität

Siehe auch