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.PlainDateTime.prototype.subtract()

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

Die subtract() Methode von Temporal.PlainDateTime Instanzen gibt ein neues Temporal.PlainDateTime-Objekt zurück, das dieses Datum und diese Zeit repräsentiert, rückwärts verschoben um eine angegebene Dauer (in einer Form, die durch Temporal.Duration.from() konvertierbar ist).

Wenn Sie zwei Datum-Zeit-Werte subtrahieren und eine Dauer erhalten möchten, verwenden Sie stattdessen since() oder until().

Syntax

js
subtract(duration)
subtract(duration, options)

Parameter

duration

Eine Zeichenkette, ein Objekt oder eine Temporal.Duration Instanz, die eine Dauer darstellt, die von diesem Datum-Zeit-Wert subtrahiert werden soll. Sie wird mit demselben Algorithmus wie Temporal.Duration.from() in ein Temporal.Duration-Objekt konvertiert.

options Optional

Ein Objekt, das die folgende Eigenschaft enthält:

overflow Optional

Ein Zeichenkette, die das Verhalten angibt, wenn eine Datums-Komponente außerhalb des gültigen Bereichs liegt. Mögliche Werte sind:

"constrain" (Standard)

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

"reject"

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

Rückgabewert

Ein neues Temporal.PlainDateTime-Objekt, das das durch den ursprünglichen PlainDateTime angegebene Datum und Zeit, minus der Dauer repräsentiert.

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

Beschreibung

Das Subtrahieren einer Dauer ist gleichbedeutend mit dem Hinzufügen ihrer Negation, daher gelten alle gleichen Überlegungen.

Beispiele

Subtrahieren einer Dauer

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
# sec-temporal.plaindatetime.prototype.subtract

Browser-Kompatibilität

Siehe auch