The getCalendars() method of Intl.Locale instances returns a list of one or more unique calendar identifiers for this locale.
Note: In some versions of some browsers, this method was implemented as an accessor property called
calendars. However, because it returns a new array on each access, it is now implemented as a method to prevent the situation oflocale.calendars === locale.calendarsreturningfalse. Check the browser compatibility table for details.
Syntax
getCalendars()
Parameters
None.
Return value
An array of strings representing all calendars commonly used for the Locale, sorted in descending preference. If the Locale already has a calendar, then the returned array contains that single value.
Below is a list of the supported calendar era types.
Supported calendar types
- buddhist- : Thai Buddhist calendar
 
- chinese- : Traditional Chinese calendar
 
- coptic- : Coptic calendar
 
- dangi- : Traditional Korean calendar
 
- ethioaa- : Ethiopic calendar, Amete Alem (epoch approx. 5493 B.C.E)
 
- ethiopic- : Ethiopic calendar, Amete Mihret (epoch approx, 8 C.E.)
 
- gregory- : Gregorian calendar
 
- hebrew- : Traditional Hebrew calendar
 
- indian- : Indian calendar
 
- islamic- : Islamic calendar
 
- islamic-umalqura- : Islamic calendar, Umm al-Qura
 
- islamic-tbla- : Islamic calendar, tabular (intercalary years [2,5,7,10,13,16,18,21,24,26,29] - astronomical epoch)
 
- islamic-civil- : Islamic calendar, tabular (intercalary years [2,5,7,10,13,16,18,21,24,26,29] - civil epoch)
 
- islamic-rgsa- : Islamic calendar, Saudi Arabia sighting
 
- iso8601- : ISO calendar (Gregorian calendar using the ISO 8601 calendar week rules)
 
- japanese- : Japanese Imperial calendar
 
- persian- : Persian calendar
 
- roc- : Civil (algorithmic) Arabic calendar
 
- islamicc- : Civil (algorithmic) Arabic calendar
Warning: The islamicccalendar key has been deprecated. Please useislamic-civil.
 
- : Civil (algorithmic) Arabic calendar
Examples
Obtaining supported calendars
If the Locale object doesn't have a calendar already, getCalendars() lists all commonly-used calendars for the given Locale. For examples of explicitly setting a calendar, see calendar examples.
const arEG = new Intl.Locale("ar-EG");
console.log(arEG.getCalendars()); // ["gregory", "coptic", "islamic", "islamic-civil", "islamic-tbla"]
const jaJP = new Intl.Locale("ja-JP");
console.log(jaJP.getCalendars()); // ["gregory", "japanese"]
Specifications
Browser compatibility
See also
- Intl.Locale
- Intl.Locale.prototype.calendar
- Unicode Calendar Identifier in the Unicode locale data markup language spec