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

Wenn Sie zwei Zeitpunkte voneinander subtrahieren und eine Dauer erhalten möchten, verwenden Sie stattdessen since() oder until().

Syntax

js
subtract(duration)

Parameter

duration

Ein String, ein Objekt oder eine Temporal.Duration-Instanz, die eine Dauer darstellt, die von diesem Zeitpunkt subtrahiert werden soll. Es wird mithilfe des gleichen Algorithmus wie Temporal.Duration.from() in ein Temporal.Duration-Objekt umgewandelt.

Rückgabewert

Ein neues Temporal.Instant-Objekt, das die Subtraktion von duration von diesem Zeitpunkt darstellt. Wenn duration positiv ist, liegt der zurückgegebene Zeitpunkt vor diesem Zeitpunkt; wenn duration negativ ist, liegt der zurückgegebene Zeitpunkt nach diesem Zeitpunkt.

Ausnahmen

RangeError

Wird in einem der folgenden Fälle ausgelöst:

  • duration ist eine Kalenderdauer (hat einen nicht-null years, months oder weeks Wert) oder hat einen nicht-null days Wert, da Kalenderdauern ohne Kalender und Zeitreferenz mehrdeutig sind.
  • Das Ergebnis liegt nicht im darstellbaren Bereich, welcher ±108 Tage, oder etwa ±273.972,6 Jahre, ab der Unix-Epoche umfasst.

Beschreibung

Das Subtrahieren einer Dauer ist äquivalent zum Addieren der Negation, sodass alle gleichen Überlegungen gelten.

Beispiele

Subtrahieren eines Temporal.Duration

js
const instant = Temporal.Instant.fromEpochMilliseconds(1000);
const duration = Temporal.Duration.from("PT1S"); // One-second duration
const newInstant = instant.subtract(duration);
console.log(newInstant.epochMilliseconds); // 0

Für weitere Beispiele siehe add().

Spezifikationen

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

Browser-Kompatibilität

BCD tables only load in the browser

Siehe auch