Temporal.PlainYearMonth.prototype.subtract()
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Die subtract()-Methode von Temporal.PlainYearMonth-Instanzen gibt ein neues Temporal.PlainYearMonth-Objekt zurück, das diesen Jahr-Monat darstellt, rückwärts verschoben um eine gegebene Dauer (in einer Form, die durch Temporal.Duration.from() konvertierbar ist).
Wenn Sie zwei Jahr-Monate subtrahieren und eine Dauer erhalten möchten, 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. Sie wird unter Verwendung desselben Algorithmus wieTemporal.Duration.from()in einTemporal.Duration-Objekt konvertiert. optionsOptional-
Ein Objekt, das die folgende Eigenschaft enthält:
overflowOptional-
Ein String, der das Verhalten angibt, wenn eine Datumskomponente außerhalb des Bereichs liegt. Mögliche Werte sind:
"constrain"(Standardwert)-
Die Datumskomponente wird auf den gültigen Bereich eingeschränkt.
"reject"-
Ein
RangeErrorwird ausgelöst, wenn die Datumskomponente außerhalb des Bereichs liegt.
Rückgabewert
Ein neues Temporal.PlainYearMonth-Objekt, das den Jahr-Monat darstellt, der durch das originale PlainYearMonth minus der Dauer angegeben ist.
Ausnahmen
RangeError-
Wird ausgelöst, wenn das Ergebnis nicht im darstellbaren Bereich liegt, was ±(108 + 1) Tage oder etwa ±273.972,6 Jahre ab der Unix-Epoche sind.
Beschreibung
Das Subtrahieren einer Dauer ist gleichbedeutend mit dem Addieren ihrer Negation, daher gelten die gleichen Überlegungen. Beim Subtrahieren einer positiven Dauer wird von Ende des Jahr-Monats rückwärts gearbeitet, sodass jede Erhöhung kleiner als die Länge des Monats ignoriert wird.
Beispiele
>Subtrahieren einer Dauer
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
Für mehr Beispiele siehe add().
Spezifikationen
| Specification |
|---|
| Temporal> # sec-temporal.plainyearmonth.prototype.subtract> |