javascript instance method
Temporal.ZonedDateTime.prototype.until()
The until() method of ZonedDateTime instances returns a new Duration object representing the duration from this date-time to another date-time (in a form convertible by Temporal.ZonedDateTime.from()). The duration is positive if the other date-time is after this date-time, and negative if before.
This method does other - this. To do this - other, use the since() method.
Syntax
until(other)
until(other, options)
Parameters
other- : A string, an object, or a
ZonedDateTimeinstance representing a date-time to subtract this date-time from. It is converted to aTemporal.ZonedDateTimeobject using the same algorithm asTemporal.ZonedDateTime.from(). It must have the same calendar asthis.
- : A string, an object, or a
optionsOptional- : The same options as
since().
- : The same options as
Return value
A new Duration object representing the duration from this date-time until other. The duration is positive if other is after this date-time, and negative if before.
Exceptions
RangeError- : Thrown in one of the following cases:
otherhas a different calendar thanthis.- Any of the options is invalid.
otherhas a different time zone thanthis, andlargestUnitis"days"or above.
- : Thrown in one of the following cases:
Examples
Using until()
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")}`);
For more examples, see since().
Specifications
SpecificationsStandards references are available on the canonical MDN page.
Browser compatibility
Browser compatibilityCompatibility data is available on the canonical MDN page.