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

js
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 ein Temporal.Duration-Objekt umgewandelt, indem derselbe Algorithmus wie bei Temporal.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

js
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

Siehe auch