Temporal.PlainYearMonth
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.
Das Temporal.PlainYearMonth
Objekt repräsentiert das Jahr und den Monat eines Kalenderdatums, ohne Tag oder Zeitzone; zum Beispiel ein Ereignis in einem Kalender, das den ganzen Monat über stattfindet. Es wird grundsätzlich als ISO 8601-Kalenderdatum mit Jahr-, Monat- und Tagesfeldern sowie einem zugeordneten Kalendersystem dargestellt. Der Tag wird verwendet, um das Jahr-Monat in nicht-ISO-Kalendersystemen zu unterscheiden.
Beschreibung
Ein PlainYearMonth
ist im Wesentlichen der Jahr-Monat-Teil eines Temporal.PlainDate
Objekts, ohne den Tag.
RFC 9557 Format
PlainYearMonth
Objekte können im 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 eigentlichen 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
bis12
. DD
Optional-
Eine zweistellige Zahl von
01
bis31
. Es ist für nicht-ISO-Kalender erforderlich und ansonsten optional. Wenn weggelassen, sieht der String wieYYYY-MM
oderYYYYMM
aus. Beachten Sie, dass der tatsächlich gespeicherte Referenztag möglicherweise anders ist als der, den Sie angeben, aber das dargestellte Jahr-Monat ist dasselbe. SieheTemporal.PlainYearMonth.from()
für mehr Informationen. DieYYYY
,MM
undDD
Komponenten können durch-
oder nichts getrennt werden. [u-ca=calendar_id]
Optional-
Ersetzen Sie
calendar_id
durch den zu verwendenden Kalender. SieheIntl.supportedValuesOf()
für eine Liste häufig unterstützter Kalendertypen. Standard ist[u-ca=iso8601]
. Kann ein kritisches Flag durch ein vorangestelltes Ausrufezeichen haben: z.B.[!u-ca=iso8601]
. Dieses Flag gibt allgemein an andere Systeme, dass es nicht ignoriert werden kann, wenn sie es nicht unterstützen. DerTemporal
Parser wird einen Fehler auslösen, wenn die Annotationen zwei oder mehr Kalenderanmerkungen enthalten und eine davon kritisch ist. Beachten Sie, dass dasYYYY-MM-DD
immer als ISO 8601-Kalenderdatum interpretiert wird und dann in den angegebenen Kalender umgewandelt wird.
Als Eingabe können Sie optional die Zeit, den Offset und die Zeitzonenkennung im gleichen Format wie PlainDateTime
einschließen, aber sie werden ignoriert. Andere Annotationen im [key=value]
Format werden ebenfalls ignoriert, und sie dürfen nicht das kritische Flag haben.
Beim Serialisieren können Sie konfigurieren, ob die Kalender-ID angezeigt werden soll und ob ein kritisches Flag dafür hinzugefügt werden soll.
Konstruktor
Temporal.PlainYearMonth()
Experimentell-
Erstellt ein neues
Temporal.PlainYearMonth
Objekt, indem die zugrunde liegenden Daten direkt bereitgestellt werden.
Statische Methoden
Temporal.PlainYearMonth.compare()
Experimentell-
Gibt eine Zahl (-1, 0 oder 1) zurück, die angibt, ob das erste Jahr-Monat vor, gleich oder nach dem zweiten Jahr-Monat kommt. Entspricht dem Vergleich der 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()
Experimentell-
Erstellt ein neues
Temporal.PlainYearMonth
Objekt aus einem anderenTemporal.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
Experimentell-
Gibt einen String zurück, der den Kalender darstellt, der verwendet wird, um das interne ISO 8601-Datum zu interpretieren.
Temporal.PlainYearMonth.prototype.constructor
-
Die Konstrukturfunktion, die das Instanzobjekt erstellt hat. Für
Temporal.PlainYearMonth
Instanzen ist der anfängliche Wert derTemporal.PlainYearMonth()
Konstruktor. Temporal.PlainYearMonth.prototype.daysInMonth
Experimentell-
Gibt eine positive ganze Zahl zurück, die die Anzahl der Tage im Monat dieses Datums darstellt. Kalender-abhängig.
Temporal.PlainYearMonth.prototype.daysInYear
Experimentell-
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 es 365 oder 366 in einem Schaltjahr.
Temporal.PlainYearMonth.prototype.era
Experimentell-
Gibt einen kalenderspezifischen Kleinbuchstaben-String zurück, der die Ära dieses Jahr-Monats darstellt, oder
undefined
, wenn der Kalender keine Ären verwendet (z.B. ISO 8601).era
underaYear
zusammen identifizieren ein Jahr in einem Kalender eindeutig, auf die gleiche Weise wieyear
. Kalender-abhängig. Für Gregorianisch ist es entweder"gregory"
oder"gregory-inverse"
. Temporal.PlainYearMonth.prototype.eraYear
Experimentell-
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 in der Regel bei 1 (häufiger) oder 0, und Jahre in einer Ära können mit der Zeit abnehmen (z.B. Gregorianisch v.Chr.).era
underaYear
zusammen identifizieren ein Jahr in einem Kalender eindeutig, auf die gleiche Weise wieyear
. Kalender-abhängig. Temporal.PlainYearMonth.prototype.inLeapYear
Experimentell-
Gibt einen booleschen Wert zurück, der angibt, ob dieses Jahr-Monat in einem Schaltjahr liegt. Ein Schaltjahr ist ein Jahr, das mehr Tage hat (aufgrund eines Schalttages oder eines Schaltmonats) als ein normales Jahr. Kalender-abhängig.
Temporal.PlainYearMonth.prototype.month
Experimentell-
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 dermonthsInYear
. Kalender-abhängig. Beachten Sie, dass im Gegensatz zuDate.prototype.getMonth()
der Index 1-basiert ist. Wenn der Kalender Schaltmonate hat, dann kann der Monat mit dem gleichenmonthCode
unterschiedlichemonth
Indizes für verschiedene Jahre haben. Temporal.PlainYearMonth.prototype.monthCode
Experimentell-
Gibt einen kalenderspezifischen String zurück, der den Monat dieses Jahr-Monats darstellt. Kalender-abhängig. Normalerweise ist es
M
plus eine zweistellige Monatsnummer. Für Schaltmonate ist es der Code des vorherigen Monats gefolgt vonL
. Wenn der Schaltmonat der erste Monat des Jahres ist, ist der CodeM00L
. Temporal.PlainYearMonth.prototype.monthsInYear
Experimentell-
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 es immer 12, aber in anderen Kalendersystemen kann es unterschiedlich sein.
Temporal.PlainYearMonth.prototype.year
Experimentell-
Gibt eine ganze Zahl zurück, die die Anzahl der Jahre dieses Jahr-Monats relativ zum Beginn eines kalenderspezifischen Epoche-Jahres darstellt. Kalender-abhängig. In der Regel ist das Jahr 1 entweder das erste Jahr der neuesten Ära oder das ISO 8601 Jahr
0001
. Wenn die Epoche in der Mitte des Jahres liegt, hat dieses Jahr denselben Wert vor und nach dem Startdatum der Ära. Temporal.PlainYearMonth.prototype[Symbol.toStringTag]
-
Der Anfangswert der
[Symbol.toStringTag]
Eigenschaft ist der String"Temporal.PlainYearMonth"
. Diese Eigenschaft wird inObject.prototype.toString()
verwendet.
Instanz-Methoden
Temporal.PlainYearMonth.prototype.add()
Experimentell-
Gibt ein neues
Temporal.PlainYearMonth
Objekt zurück, das dieses Jahr-Monat, um eine gegebene Dauer nach vorne verschoben, darstellt (in einer Form, die durchTemporal.Duration.from()
umgewandelt werden kann). Temporal.PlainYearMonth.prototype.equals()
Experimentell-
Gibt
true
zurück, wenn dieses Jahr-Monat einem anderen Jahr-Monat im Wert entspricht (in einer Form, die durchTemporal.PlainYearMonth.from()
umgewandelt werden kann), undfalse
andernfalls. Sie werden sowohl durch ihre zugrunde liegenden ISO-Datenwerte als auch durch ihre Kalender verglichen, sodass zwei Jahr-Monate aus verschiedenen Kalendern durchTemporal.PlainYearMonth.compare()
als gleich angesehen werden können, aber nicht durchequals()
. Temporal.PlainYearMonth.prototype.since()
Experimentell-
Gibt ein neues
Temporal.Duration
Objekt zurück, das die Dauer von einem anderen Jahr-Monat (in einer Form, die durchTemporal.PlainYearMonth.from()
umgewandelt werden kann) bis zu diesem Jahr-Monat darstellt. Die Dauer ist positiv, wenn der andere Monat vor diesem Monat ist, und negativ, wenn nach. Temporal.PlainYearMonth.prototype.subtract()
Experimentell-
Gibt ein neues
Temporal.PlainYearMonth
Objekt zurück, das dieses Jahr-Monat, um eine gegebene Dauer zurückverschoben, darstellt (in einer Form, die durchTemporal.Duration.from()
umgewandelt werden kann). Temporal.PlainYearMonth.prototype.toJSON()
Experimentell-
Gibt einen String zurück, der dieses Jahr-Monat im gleichen RFC 9557 Format wie ein Aufruf von
toString()
darstellt. Soll implizit durchJSON.stringify()
aufgerufen werden. Temporal.PlainYearMonth.prototype.toLocaleString()
Experimentell-
Gibt einen String mit einer sprachsensitiven Darstellung dieses Jahr-Monats zurück.
Temporal.PlainYearMonth.prototype.toPlainDate()
Experimentell-
Gibt ein neues
Temporal.PlainDate
Objekt zurück, das dieses Jahr-Monat und einen angegebenen Tag im gleichen Kalendersystem darstellt. Temporal.PlainYearMonth.prototype.toString()
Experimentell-
Gibt einen String zurück, der dieses Jahr-Monat im RFC 9557 Format darstellt.
Temporal.PlainYearMonth.prototype.until()
Experimentell-
Gibt ein neues
Temporal.Duration
Objekt zurück, das die Dauer von diesem Jahr-Monat zu einem anderen Jahr-Monat (in einer Form, die durchTemporal.PlainYearMonth.from()
umgewandelt werden kann) darstellt. Die Dauer ist positiv, wenn der andere Monat nach diesem Monat ist, und negativ, wenn davor. Temporal.PlainYearMonth.prototype.valueOf()
Experimentell-
Löst einen
TypeError
aus, der verhindert, dassTemporal.PlainYearMonth
Instanzen implizit in primitive Werte umgewandelt werden, wenn sie in arithmetischen oder Vergleichsoperationen verwendet werden. Temporal.PlainYearMonth.prototype.with()
Experimentell-
Gibt ein neues
Temporal.PlainYearMonth
Objekt zurück, das dieses Jahr-Monat mit einigen durch neue Werte ersetzten Feldern darstellt.
Spezifikationen
Specification |
---|
Temporal # sec-temporal-plainyearmonth-objects |