Temporal.PlainYearMonth.prototype.subtract()
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 subtract()
-Methode von Temporal.PlainYearMonth
-Instanzen gibt ein neues Temporal.PlainYearMonth
-Objekt zurück, das diesen Jahr-Monat darstellt, rückwärts bewegt um eine angegebene Dauer (in einer Form, die von Temporal.Duration.from()
umwandelbar ist).
Wenn Sie zwei Jahr-Monate subtrahieren möchten und eine Dauer erhalten wollen, verwenden Sie stattdessen since()
oder until()
.
Syntax
subtract(duration)
subtract(duration, options)
Parameter
duration
-
Ein String, ein Objekt oder eine
Temporal.Duration
-Instanz, die eine Dauer darstellt, die von diesem Jahr-Monat subtrahiert werden soll. Es wird mithilfe desselben Algorithmus wieTemporal.Duration.from()
in einTemporal.Duration
-Objekt umgewandelt. options
Optional-
Ein Objekt, das folgende Eigenschaft enthält:
overflow
Optional-
Ein String, der das Verhalten angibt, wenn eine Datums-Komponente außerhalb des gültigen Bereichs liegt. Mögliche Werte sind:
"constrain"
(Standard)-
Die Datums-Komponente wird auf den gültigen Bereich beschränkt (clamped).
"reject"
-
Es wird ein
RangeError
ausgelöst, wenn die Datums-Komponente außerhalb des Bereichs liegt.
Rückgabewert
Ein neues Temporal.PlainYearMonth
-Objekt, das den durch das ursprüngliche PlainYearMonth
spezifizierten Jahr-Monat minus der Dauer darstellt.
Ausnahmen
RangeError
-
Wird ausgelöst, wenn das Ergebnis nicht im darstellbaren Bereich liegt, welcher ±(108 + 1) Tage oder etwa ±273.972,6 Jahre ab der Unix-Epoche umfasst.
Beschreibung
Das Subtrahieren einer Dauer entspricht dem Hinzufügen ihrer Negation, daher gelten dieselben Überlegungen. Das Subtrahieren einer positiven Dauer beginnt am Ende des Jahr-Monats und bewegt sich rückwärts, sodass jedes Inkrement, das kleiner als die Länge des Monats ist, ignoriert wird.
Beispiele
Eine Dauer subtrahieren
const start = Temporal.PlainYearMonth.from("2022-01");
const end = start.subtract({ years: 1, months: 2, weeks: 3, days: 4 });
console.log(end.toString()); // 2020-11
Weitere Beispiele finden Sie unter add()
.
Spezifikationen
Specification |
---|
Temporal proposal # sec-temporal.plainyearmonth.prototype.subtract |
Browser-Kompatibilität
Report problems with this compatibility data on GitHubdesktop | mobile | server | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
subtract |
Legend
Tip: you can click/tap on a cell for more information.
- No support
- No support
- Experimental. Expect behavior to change in the future.
- See implementation notes.
- User must explicitly enable this feature.