Temporal.ZonedDateTime.prototype.until()

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 until() Methode von Temporal.ZonedDateTime-Instanzen gibt ein neues Temporal.Duration-Objekt zurück, das die Dauer von diesem Datum-Zeitpunkt zu einem anderen Datum-Zeitpunkt darstellt (in einer Form, die mit Temporal.ZonedDateTime.from() konvertierbar ist). Die Dauer ist positiv, wenn der andere Datum-Zeitpunkt nach diesem liegt, und negativ, wenn er davor liegt.

Diese Methode entspricht other - this. Um this - other zu berechnen, verwenden Sie die since() Methode.

Syntax

js
until(other)
until(other, options)

Parameter

other

Ein String, ein Objekt oder eine Temporal.ZonedDateTime-Instanz, die ein Datum-Zeitpunkt darstellt, von dem dieser Datum-Zeitpunkt subtrahiert werden soll. Es wird mit demselben Algorithmus zu einem Temporal.ZonedDateTime-Objekt konvertiert wie Temporal.ZonedDateTime.from(). Es muss denselben Kalender wie this haben.

options Optional

Dieselben Optionen wie bei since().

Rückgabewert

Ein neues Temporal.Duration-Objekt, das die Dauer von diesem Datum-Zeitpunkt bis other darstellt. Die Dauer ist positiv, wenn other nach diesem Datum-Zeitpunkt liegt, und negativ, wenn er davor liegt.

Ausnahmen

RangeError

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

  • other hat einen anderen Kalender als this.
  • Eine der Optionen ist ungültig.
  • other hat eine andere Zeitzone als this, und largestUnit ist "days" oder darüber.

Beispiele

Verwendung von until()

js
const flight = Temporal.ZonedDateTime.from(
  "2024-12-21T13:31:00-05:00[America/New_York]",
);
const now = Temporal.Now.zonedDateTimeISO("America/New_York").round("second");
if (Temporal.ZonedDateTime.compare(flight, now) < 0) {
  console.error(
    "The flight is already in the past. The result may not make sense.",
  );
}
const duration = now.until(flight, { largestUnit: "days" });
console.log(`The flight is in ${duration.toLocaleString("en-US")}`);

Für weitere Beispiele siehe since().

Spezifikationen

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

Browser-Kompatibilität

Siehe auch