ZonedDateTime since()
Example
const start = Temporal.PlainDateTime.from("2026-05-16T14:30:00");
const end = Temporal.PlainDateTime.from("2026-05-17T14:30:00");
const duration = end.since(start, {smallestUnit:"days"});
Try it Yourself »
Description
The since() method returns a Temporal.Duration object representing
the duration from this ZonedDateTime since another ZonedDateTime.
The since() method does not change the original ZonedDateTime object.
Syntax
zoneddatetime.since(other, option)
Parameters
| Parameter | Description |
| other | Another ZonedDateTime. |
| option | Any valid Temporal.Duration.round() option. |
Return Value
| Type | Description |
| Object | A Temporal.Duration object representing the duration since the other date. |
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>