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

Report problems with this compatibility data on GitHub
desktopmobileserver
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
Deno
Node.js
subtract
Experimental

Legend

Tip: you can click/tap on a cell for more information.

In development. Supported in a pre-release version.
In development. Supported in a pre-release version.
No support
No support
Experimental. Expect behavior to change in the future.
See implementation notes.
User must explicitly enable this feature.

Siehe auch