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.PlainYearMonth

Limited availability

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

Das Temporal.PlainYearMonth-Objekt repräsentiert das Jahr und den Monat eines Kalendertages, ohne einen Tag oder eine Zeitzone. Es wird beispielsweise für ein Ereignis verwendet, das während des gesamten Monats stattfindet. Es wird grundlegend als ein ISO 8601-Kalenderdatum mit Feldern für Jahr, Monat und Tag sowie einem zugehörigen Kalendersystem dargestellt. Der Tag wird zur Unterscheidung des Jahr-Monats in nicht-ISO-Kalendersystemen verwendet.

Beschreibung

Ein PlainYearMonth ist im Wesentlichen der Jahr-Monat-Teil eines Temporal.PlainDate-Objekts, ohne den Tag.

RFC 9557 Format

PlainYearMonth Objekte können mit dem RFC 9557 Format, einer Erweiterung des ISO 8601 / RFC 3339 Formats, serialisiert und geparst werden. Der String hat die folgende Form (Leerzeichen dienen nur der Lesbarkeit und sollten im tatsächlichen String nicht vorhanden sein):

YYYY-MM-DD [u-ca=calendar_id]
YYYY

Entweder eine vierstellige Zahl oder eine sechsstellige Zahl mit einem + oder - Zeichen.

MM

Eine zweistellige Zahl von 01 bis 12.

DD Optional

Eine zweistellige Zahl von 01 bis 31. Sie ist für nicht-ISO Kalender erforderlich und ansonsten optional. Wenn sie weggelassen wird, sieht der String aus wie YYYY-MM oder YYYYMM. Beachten Sie, dass der tatsächlich gespeicherte Referenztag von dem abweichen kann, den Sie angeben, aber der dargestellte Jahr-Monat bleibt gleich. Siehe Temporal.PlainYearMonth.from() für weitere Informationen. Die YYYY, MM und DD Komponenten können durch - oder gar nichts getrennt werden.

[u-ca=calendar_id] Optional

Ersetzen Sie calendar_id durch den zu verwendenden Kalender. Siehe Intl.supportedValuesOf() für eine Liste der allgemein unterstützten Kalendertypen. Standardmäßig wird [u-ca=iso8601] verwendet. Es kann eine critical flag haben, indem Sie den Schlüssel mit ! voranstellen: z.B. [!u-ca=iso8601]. Diese Flagge gibt anderen Systemen in der Regel an, dass sie nicht ignoriert werden kann, wenn sie nicht unterstützt wird. Der Temporal-Parser wirft einen Fehler, wenn die Annotationen zwei oder mehr Kalenderannotationen enthalten und eine davon kritisch ist. Beachten Sie, dass das YYYY-MM-DD immer als ISO 8601 Kalenderdatum interpretiert und dann in den angegebenen Kalender konvertiert wird.

Als Eingabe können Sie optional die Zeit, Versatz und Zeitzonenkennung im gleichen Format wie PlainDateTime einschließen, sie werden jedoch ignoriert. Andere Annotationen im [key=value] Format werden ebenfalls ignoriert, und sie dürfen nicht die kritische Flagge haben.

Beim Serialisieren können Sie konfigurieren, ob die Kalender-ID angezeigt werden soll und ob eine kritische Flagge hinzugefügt werden soll.

Konstruktor

Temporal.PlainYearMonth() Experimentell

Erstellt ein neues Temporal.PlainYearMonth-Objekt durch direkte Bereitstellung der zugrunde liegenden Daten.

Statische Methoden

Temporal.PlainYearMonth.compare()

Gibt eine Zahl (-1, 0 oder 1) zurück, die angibt, ob der erste Jahr-Monat vor, gleich oder nach dem zweiten Jahr-Monat liegt. Entspricht dem Vergleich ihrer zugrunde liegenden ISO 8601-Daten. Zwei Jahr-Monate aus verschiedenen Kalendern können als gleich angesehen werden, wenn sie am selben ISO-Datum beginnen.

Temporal.PlainYearMonth.from()

Erstellt ein neues Temporal.PlainYearMonth-Objekt aus einem anderen Temporal.PlainYearMonth-Objekt, einem Objekt mit Jahr- und Monatseigenschaften oder einem RFC 9557 String.

Instanz-Eigenschaften

Diese Eigenschaften sind auf Temporal.PlainYearMonth.prototype definiert und werden von allen Temporal.PlainYearMonth-Instanzen geteilt.

Temporal.PlainYearMonth.prototype.calendarId

Gibt einen String zurück, der den Kalender darstellt, der zur Interpretation des internen ISO 8601 Datums verwendet wird.

Temporal.PlainYearMonth.prototype.constructor

Die Konstruktorfunktion, die das Instanzobjekt erstellt hat. Für Temporal.PlainYearMonth-Instanzen ist der ursprüngliche Wert der Temporal.PlainYearMonth()-Konstruktor.

Temporal.PlainYearMonth.prototype.daysInMonth

Gibt eine positive ganze Zahl zurück, die die Anzahl der Tage im Monat dieses Datums darstellt. Kalender-abhängig.

Temporal.PlainYearMonth.prototype.daysInYear

Gibt eine positive ganze Zahl zurück, die die Anzahl der Tage im Jahr dieses Datums darstellt. Kalender-abhängig. Für den ISO 8601 Kalender sind das 365, oder 366 in einem Schaltjahr.

Temporal.PlainYearMonth.prototype.era

Gibt einen kalenderabhängigen Kleinbuchstaben-String zurück, der die Ära dieses Jahr-Monats darstellt, oder undefined, wenn der Kalender keine Ären verwendet (z.B. ISO 8601). era und eraYear zusammen identifizieren ein Jahr in einem Kalender eindeutig, auf die gleiche Weise wie year. Kalender-abhängig. Für Gregorianisch ist es entweder "ce" oder "bce".

Temporal.PlainYearMonth.prototype.eraYear

Gibt eine nicht-negative ganze Zahl zurück, die das Jahr dieses Jahr-Monats innerhalb der Ära darstellt, oder undefined, wenn der Kalender keine Ären verwendet (z.B. ISO 8601). Der Jahresindex beginnt normalerweise bei 1 (häufiger) oder 0, und Jahre in einer Ära können mit der Zeit abnehmen (z.B. Gregorianischer BCE). era und eraYear zusammen identifizieren ein Jahr in einem Kalender eindeutig, auf die gleiche Weise wie year. Kalender-abhängig.

Temporal.PlainYearMonth.prototype.inLeapYear

Gibt einen Boolean zurück, der angibt, ob dieser Jahr-Monat in einem Schaltjahr liegt. Ein Schaltjahr ist ein Jahr, das mehr Tage hat (aufgrund eines Schalt- oder Schaltmonats) als ein normales Jahr. Kalender-abhängig.

Temporal.PlainYearMonth.prototype.month

Gibt eine positive ganze Zahl zurück, die den 1-basierten Monatsindex im Jahr dieses Jahr-Monats darstellt. Der erste Monat dieses Jahres ist 1, und der letzte Monat ist der monthsInYear. Kalender-abhängig. Beachten Sie, dass im Gegensatz zu Date.prototype.getMonth() der Index 1-basiert ist. Wenn der Kalender Schaltmonate hat, dann kann der Monat mit demselben monthCode für verschiedene Jahre unterschiedliche month-Indizes haben.

Temporal.PlainYearMonth.prototype.monthCode

Gibt einen kalenderabhängigen String zurück, der den Monat dieses Jahr-Monats darstellt. Kalender-abhängig. Normalerweise ist es M plus eine zweistellige Monatszahl. Für Schaltmonate ist es der Code des vorhergehenden Monats gefolgt von L. Wenn der Schaltmonat der erste Monat des Jahres ist, ist der Code M00L.

Temporal.PlainYearMonth.prototype.monthsInYear

Gibt eine positive ganze Zahl zurück, die die Anzahl der Monate im Jahr dieses Datums darstellt. Kalender-abhängig. Für den ISO 8601 Kalender sind das immer 12, aber in anderen Kalendersystemen kann es abweichen.

Temporal.PlainYearMonth.prototype.year

Gibt eine ganze Zahl zurück, die die Anzahl der Jahre dieses Jahr-Monats relativ zum Beginn eines kalenderabhängigen Epochenjahres darstellt. Kalender-abhängig. Normalerweise ist das Jahr 1 entweder das erste Jahr der letzten Ära oder das ISO 8601 Jahr 0001. Wenn die Epoche in der Mitte des Jahres ist, wird dieses Jahr denselben Wert vor und nach dem Startdatum der Ära haben.

Temporal.PlainYearMonth.prototype[Symbol.toStringTag]

Der anfängliche Wert der [Symbol.toStringTag] Eigenschaft ist der String "Temporal.PlainYearMonth". Diese Eigenschaft wird in Object.prototype.toString() verwendet.

Instanz-Methoden

Temporal.PlainYearMonth.prototype.add()

Gibt ein neues Temporal.PlainYearMonth-Objekt zurück, das diesen Jahr-Monat um eine gegebene Dauer (in einer Form, die von Temporal.Duration.from() konvertierbar ist) nach vorne verschoben darstellt.

Temporal.PlainYearMonth.prototype.equals()

Gibt true zurück, wenn dieser Jahr-Monat in seinem Wert einem anderen Jahr-Monat entspricht (in einer Form, die von Temporal.PlainYearMonth.from() konvertierbar ist), und false andernfalls. Sie werden sowohl durch ihre zugrunde liegenden ISO-Dateiwerte als auch durch ihre Kalender verglichen, sodass zwei Jahr-Monate aus verschiedenen Kalendern von Temporal.PlainYearMonth.compare() als gleich angesehen werden können, aber nicht von equals().

Temporal.PlainYearMonth.prototype.since()

Gibt ein neues Temporal.Duration-Objekt zurück, das die Dauer von einem anderen Jahr-Monat (in einer Form, die von Temporal.PlainYearMonth.from() konvertierbar ist) bis zu diesem Jahr-Monat darstellt. Die Dauer ist positiv, wenn der andere Monat vor diesem Monat liegt, und negativ, wenn danach.

Temporal.PlainYearMonth.prototype.subtract()

Gibt ein neues Temporal.PlainYearMonth-Objekt zurück, das diesen Jahr-Monat um eine gegebene Dauer (in einer Form, die von Temporal.Duration.from() konvertierbar ist) nach hinten verschoben darstellt.

Temporal.PlainYearMonth.prototype.toJSON()

Gibt einen String zurück, der diesen Jahr-Monat im selben RFC 9557 Format darstellt wie der Aufruf von toString(). Soll implizit von JSON.stringify() aufgerufen werden.

Temporal.PlainYearMonth.prototype.toLocaleString()

Gibt einen String mit einer sprachenspezifischen Darstellung dieses Jahr-Monats zurück.

Temporal.PlainYearMonth.prototype.toPlainDate()

Gibt ein neues Temporal.PlainDate-Objekt zurück, das diesen Jahr-Monat und einen angegebenen Tag im selben Kalendersystem darstellt.

Temporal.PlainYearMonth.prototype.toString()

Gibt einen String zurück, der diesen Jahr-Monat im RFC 9557 Format darstellt.

Temporal.PlainYearMonth.prototype.until()

Gibt ein neues Temporal.Duration-Objekt zurück, das die Dauer von diesem Jahr-Monat bis zu einem anderen Jahr-Monat (in einer Form, die von Temporal.PlainYearMonth.from() konvertierbar ist) darstellt. Die Dauer ist positiv, wenn der andere Monat nach diesem Monat liegt, und negativ, wenn vorher.

Temporal.PlainYearMonth.prototype.valueOf()

Wirft einen TypeError, der verhindert, dass Temporal.PlainYearMonth-Instanzen implizit in primitive Typen umgewandelt werden, wenn sie in arithmetischen oder Vergleichsoperationen verwendet werden.

Temporal.PlainYearMonth.prototype.with()

Gibt ein neues Temporal.PlainYearMonth-Objekt zurück, das diesen Jahr-Monat mit einigen Feldern ersetzt durch neue Werte darstellt.

Spezifikationen

Specification
Temporal
# sec-temporal-plainyearmonth-objects

Browser-Kompatibilität

Siehe auch