Japanese Era Calendar Dates with Intl.DateTimeFormat

Format dates using the Japanese Imperial era calendar (Reiwa, Heisei, Showa) with Intl.DateTimeFormat. Learn about the -u-ca-japanese Unicode extension and era display options.

Intl.DateTimeFormat

Detailed Explanation

Japanese Era Calendar Formatting

Japan uses a unique calendar system based on Imperial eras. The current era is Reiwa (令和), which began on May 1, 2019. The Intl.DateTimeFormat API supports this calendar through the -u-ca-japanese Unicode extension.

Basic Japanese Era Formatting

const date = new Date('2025-03-15');

new Intl.DateTimeFormat('ja-JP-u-ca-japanese', {
  dateStyle: 'full',
}).format(date);
// "令和7年3月15日土曜日"

new Intl.DateTimeFormat('ja-JP-u-ca-japanese', {
  dateStyle: 'long',
}).format(date);
// "令和7年3月15日"

new Intl.DateTimeFormat('ja-JP-u-ca-japanese', {
  dateStyle: 'medium',
}).format(date);
// "令和7年3月15日"

Era Display Options

new Intl.DateTimeFormat('ja-JP-u-ca-japanese', {
  era: 'long',
  year: 'numeric',
  month: 'long',
  day: 'numeric',
}).format(date);
// "令和7年3月15日"

new Intl.DateTimeFormat('ja-JP-u-ca-japanese', {
  era: 'short',
  year: 'numeric',
}).format(date);
// "令和7年"

new Intl.DateTimeFormat('ja-JP-u-ca-japanese', {
  era: 'narrow',
  year: 'numeric',
}).format(date);
// "R7年"

Japanese Era Timeline

Era Japanese Start Date End Date
Reiwa 令和 2019-05-01 Present
Heisei 平成 1989-01-08 2019-04-30
Shōwa 昭和 1926-12-25 1989-01-07
Taishō 大正 1912-07-30 1926-12-24
Meiji 明治 1868-10-23 1912-07-29

Cross-Era Formatting

// Heisei era date
const heisei = new Date('2018-06-15');
new Intl.DateTimeFormat('ja-JP-u-ca-japanese', {
  dateStyle: 'long',
}).format(heisei);
// "平成30年6月15日"

// Showa era date
const showa = new Date('1985-03-01');
new Intl.DateTimeFormat('ja-JP-u-ca-japanese', {
  dateStyle: 'long',
}).format(showa);
// "昭和60年3月1日"

Using in English with Japanese Calendar

new Intl.DateTimeFormat('en-US-u-ca-japanese', {
  era: 'long',
  year: 'numeric',
  month: 'long',
  day: 'numeric',
}).format(new Date('2025-03-15'));
// "March 15, 7 Reiwa"

This is useful for applications that need to show the Japanese era in English-language contexts.

Use Case

Japanese era calendar support is essential for applications serving Japanese users, particularly in government, legal, and financial contexts where Imperial era dates are the norm. Japanese official documents, forms, and correspondence frequently use era-based dates. A form accepting a date of birth in Japan needs to support era input. Financial reports and legal filings in Japan require era-format dates. Even consumer applications like calendars and scheduling tools serving Japanese users benefit from showing era information.

Try It — Locale String Tester

Open full tool