ZonedDateTime withCalendar()
Example
const zoned = Temporal.ZonedDateTime.from("2026-05-17T14:30:00[Europe/Oslo]");
const newDate = zoned.withCalendar("islamic-umalqura");
Try it Yourself »
Description
The withCalendar() method returns a ZonedDateTime object with
this ZonedDateTime in a new calendar system.
The withCalendar() method does not change the original ZonedDateTime.
Syntax
zoneddatetime.withCalendar(calendar)
Parameters
| Parameter | Description |
| calendar | A string with a calendar id. |
Return Value
| Type | Description |
| Object | A new ZonedDateTime object in a new calender system. |
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>