JavaScript PlainDate until()
Example
const start = Temporal.PlainDate.from("2026-05-16");
const end = Temporal.PlainDate.from("2026-05-17");
const duration = end.until(start, {smallestUnit:"days"});
Try it Yourself »
Description
The until() method returns a Temporal.Duration object representing
the duration wrom this PlainDate until another PlainDate.
The until() method does not change the original PlainDate object.
Syntax
plaindate.until(other, option)
Parameters
| Parameter | Description |
| other | A PlainDate. |
| option | Any valid Temporal.Duration.round() option. |
Return Value
| Type | Description |
| Object | A Temporal.Duration object representing the duration until the other date. |
Note
The until() method compares only objects of the same type.
Other Temporal types must be converted before comparison.
Browser Support
Temporal is a major update to the JavaScript standard (TC39).
It is currently supported in Chrome, Edge, Firefox, and Opera and is expected to reach full availability across browsers before the summer of 2026.
| Chrome 144 |
Edge 144 |
Firefox 139 |
Safari |
Opera 128 |
| Jan 2026 | Jan 2026 | May 2025 | 🚫 | Feb 2026 |
The Safari implementation can be tested in Safari Technology Preview by enabling the --use-temporal runtime flag.
Polyfill
Until Safari support Temporal natively, you can use the official polyfill:
<script
src="https://cdn.jsdelivr.net/npm/@js-temporal/polyfill/dist/index.umd.js">
</script>