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, der um eine gegebene Dauer (in einer Form, die von Temporal.Duration.from()
umgewandelt werden kann) rückwärts bewegt wurde.
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 in einTemporal.Duration
-Objekt umgewandelt, indem derselbe Algorithmus wie beiTemporal.Duration.from()
verwendet wird. options
Optional-
Ein Objekt, das die folgende Eigenschaft enthält:
overflow
Optional-
Ein String, der das Verhalten angibt, wenn ein Datumsbestandteil außerhalb des gültigen Bereichs liegt. Mögliche Werte sind:
"constrain"
(Standard)-
Der Datumsbestandteil wird auf den gültigen Bereich begrenzt.
"reject"
-
Ein
RangeError
wird ausgelöst, wenn der Datumsbestandteil außerhalb des gültigen Bereichs liegt.
Rückgabewert
Ein neues Temporal.PlainYearMonth
-Objekt, das den Jahr-Monat darstellt, der durch den ursprünglichen PlainYearMonth
angegeben wird, minus der Dauer.
Ausnahmen
RangeError
-
Wird ausgelöst, wenn das Ergebnis nicht im darstellbaren Bereich ist, der ±(108 + 1) Tage, oder etwa ±273,972.6 Jahre, von der Unix-Epoche umfasst.
Beschreibung
Das Subtrahieren einer Dauer ist gleichbedeutend mit dem Hinzufügen ihrer Negation, sodass dieselben Überlegungen gelten. Das Subtrahieren einer positiven Dauer beginnt am Ende des Jahr-Monats und bewegt sich rückwärts, 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 weitere Beispiele siehe add()
.
Spezifikationen
Specification |
---|
Temporal> # sec-temporal.plainyearmonth.prototype.subtract> |
Browser-Kompatibilität
Loading…