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.ZonedDateTime.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.ZonedDateTime-Instanzen gibt ein neues Temporal.ZonedDateTime-Objekt zurück, das diesem Datum-Uhrzeit entspricht, jedoch rückwärts um eine angegebene Dauer verschoben ist (in einer Form, die von Temporal.Duration.from() konvertierbar ist).

Wenn Sie zwei Datum-Uhrzeiten 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 von dieser Datum-Uhrzeit zu subtrahierende Dauer darstellt. 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 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 Bereichs liegt.

Rückgabewert

Ein neues Temporal.ZonedDateTime-Objekt, das die Datum-Uhrzeit darstellt, die durch das ursprüngliche ZonedDateTime minus der Dauer spezifiziert wird.

Ausnahmen

RangeError

Wird ausgelöst, wenn das Ergebnis nicht im darstellbaren Bereich liegt, der ±108 Tage oder etwa ±273.972,6 Jahre ab der Unix-Epoche umfasst.

Beschreibung

Das Subtrahieren einer Dauer ist gleichbedeutend mit dem Hinzufügen ihrer Negation, sodass alle diesbezüglichen Überlegungen gelten.

Beispiele

Subtrahieren einer Dauer

js
const start = Temporal.ZonedDateTime.from(
  "2021-01-01T12:34:56-05:00[America/New_York]",
);
const end = start.subtract({
  years: 1,
  months: 2,
  weeks: 3,
  days: 4,
  hours: 5,
  minutes: 6,
  seconds: 7,
  milliseconds: 8,
});
console.log(end.toString()); // 2019-10-07T07:28:48.992-04:00[America/New_York]

Spezifikationen

Specification
Temporal
# sec-temporal.zoneddatetime.prototype.subtract

Browser-Kompatibilität

Siehe auch