Temporal.PlainDate.prototype.withCalendar()
Baseline Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
The withCalendar() method of Temporal.PlainDate instances returns a new Temporal.PlainDate object representing this date interpreted in the new calendar system. Because all Temporal objects are designed to be immutable, this method essentially functions as the setter for the date's calendarId property.
To replace the date component properties, use the with() method instead.
Syntax
withCalendar(calendar)
Parameters
-
calendar - A string that corresponds to the
calendarIdproperty. SeeIntl.supportedValuesOf()for a list of commonly supported calendar types.
Return value
A new Temporal.PlainDate object, representing the date specified by the original PlainDate, interpreted in the new calendar system.
Exceptions
-
TypeError - Thrown if
calendaris not a string. -
RangeError - Thrown if
calendaris not a valid calendar identifier.
Examples
Using withCalendar()
const date = Temporal.PlainDate.from("2021-07-01");
const newDate = date.withCalendar("islamic-umalqura");
console.log(newDate.toLocaleString("en-US", { calendar: "islamic-umalqura" }));
// 11/21/1442 AH
Specifications
| Specification |
|---|
| Temporal # sec-temporal.plaindate.prototype.withcalendar |
Browser compatibility
| Desktop | Mobile | Server | |||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari on iOS | Samsung Internet | WebView Android | WebView on iOS | Bun | Deno | Node.js | |
withCalendar |
144 |
144 |
139Calendarsislamic, islamic-rgsa and islamic-umalqura are not available. See bug 1950425 and bug 1954138. |
128 |
preview |
144 |
139Calendarsislamic, islamic-rgsa and islamic-umalqura are not available. See bug 1950425 and bug 1954138. |
95 |
No |
No |
144 |
No |
1.4.0 |
2.7 |
26.0.0 |
See also
Temporal.PlainDateTemporal.PlainDate.prototype.with()Temporal.PlainDate.from()Temporal.PlainDate.prototype.calendarId
© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Temporal/PlainDate/withCalendar