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 Safari has not shipped it yet.
| 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 supports Temporal natively, you can use the official polyfill:
<script
src="https://cdn.jsdelivr.net/npm/@js-temporal/polyfill@0.5.1/dist/index.umd.js">
</script>