Temporal.PlainDateTime.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 Methode subtract() von Temporal.PlainDateTime-Instanzen gibt ein neues Temporal.PlainDateTime-Objekt zurück, das diesen Zeitstempel um eine angegebene Dauer (in einer Form, die durch Temporal.Duration.from() konvertierbar ist) rückwärts verschoben darstellt.

Wenn Sie zwei Zeitpunkte subtrahieren möchten, um eine Dauer zu erhalten, 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 Zeitstempel subtrahiert werden soll. Es wird unter Verwendung desselben Algorithmus wie Temporal.Duration.from() in ein Temporal.Duration-Objekt konvertiert.

options Optional

Ein Objekt, das die folgende Eigenschaft enthält:

overflow Optional

Ein String, der das Verhalten angibt, wenn eine Datums-Komponente außerhalb des zulässigen Bereichs liegt. Mögliche Werte sind:

"constrain" (Standard)

Die Datums-Komponente wird auf den gültigen Bereich eingeschränkt.

"reject"

Ein RangeError wird ausgelöst, wenn die Datums-Komponente außerhalb des zulässigen Bereichs liegt.

Rückgabewert

Ein neues Temporal.PlainDateTime-Objekt, das den Zeitstempel des ursprünglichen PlainDateTime 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 beträgt.

Beschreibung

Das Subtrahieren einer Dauer entspricht dem Addieren ihrer Negation, sodass alle gleichen Überlegungen gelten.

Beispiele

Eine Dauer subtrahieren

js
const start = Temporal.PlainDateTime.from("2022-01-01T12:34:56");
const end = start.subtract({
  years: 1,
  months: 2,
  weeks: 3,
  days: 4,
  hours: 5,
  minutes: 6,
  seconds: 7,
  milliseconds: 8,
});
console.log(end.toString()); // 2020-10-07T07:28:48.992

Spezifikationen

Specification
Temporal proposal
# sec-temporal.plaindatetime.prototype.subtract

Browser-Kompatibilität

BCD tables only load in the browser

Siehe auch