Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/C/Firefox/js/src/tests/non262/Intl/DateTimeFormat/   (Firefox Browser Version 153.0.1©)  Datei vom 27.6.2026 mit Größe 10 kB image not shown  

Quelle  japanese-era.js   Sprache: JAVA

 

const {
  Era, Year, Month, Day, Literal
} = DateTimeFormatParts;

const calendar = "japanese";
const timeZone = "UTC";

const tests = {
  "en": [
    {
      options: {
        // defaults to "narrow" era
      },
      dates: [
        {
          date: "1970-01-01T00:00:00.000Z",
          parts: [
            Month("1"), Literal("/"), Day("1"), Literal("/"), Year("45"), Literal(" "), Era("S")
          ],
        },
        {
          date: "1900-01-01T00:00:00.000Z",
          parts: [
            Month("1"), Literal("/"), Day("1"), Literal("/"), Year("33"), Literal(" "), Era("M")
          ],
        },
        {
          date: "1868-10-23T00:00:00.000Z",
          parts: [
            Month("10"), Literal("/"), Day("23"), Literal("/"), Year("1"), Literal(" "), Era("M")
          ],
        },
        {
          date: "1868-10-22T00:00:00.000Z",
          parts: [
            Month("10"), Literal("/"), Day("22"), Literal("/"), Year("1868"), Literal(" "), Era("A")
          ],
        },
        {
          date: "1868-01-01T00:00:00.000Z",
          parts: [
            Month("1"), Literal("/"), Day("1"), Literal("/"), Year("1868"), Literal(" "), Era("A")
          ],
        },
        {
          date: "1800-01-01T00:00:00.000Z",
          parts: [
            Month("1"), Literal("/"), Day("1"), Literal("/"), Year("1800"), Literal(" "), Era("A")
          ],
        },
        {
          date: "0001-01-01T00:00:00.000Z",
          parts: [
            Month("1"), Literal("/"), Day("1"), Literal("/"), Year("1"), Literal(" "), Era("A")
          ],
        },
        {
          date: "0000-01-01T00:00:00.000Z",
          parts: [
            Month("1"), Literal("/"), Day("1"), Literal("/"), Year("1"), Literal(" "), Era("B")
          ],
        },
        {
          date: "-000001-01-01T00:00:00.000Z",
          parts: [
            Month("1"), Literal("/"), Day("1"), Literal("/"), Year("2"), Literal(" "), Era("B")
          ],
        },
        {
          date: "-100000-01-01T00:00:00.000Z",
          parts: [
            Month("1"), Literal("/"), Day("1"), Literal("/"), Year("100001"), Literal(" "), Era("B")
          ],
        },
      ],
    },
    {
      options: {
        era: "short",
      },
      dates: [
        {
          date: "1970-01-01T00:00:00.000Z",
          parts: [
            Month("1"), Literal("/"), Day("1"), Literal("/"), Year("45"), Literal(" "), Era("Shōwa")
          ],
        },
        {
          date: "1868-10-23T00:00:00.000Z",
          parts: [
            Month("10"), Literal("/"), Day("23"), Literal("/"), Year("1"), Literal(" "), Era("Meiji")
          ],
        },
        {
          date: "1868-10-22T00:00:00.000Z",
          parts: [
            Month("10"), Literal("/"), Day("22"), Literal("/"), Year("1868"), Literal(" "), Era("AD")
          ],
        },
        {
          date: "0001-01-01T00:00:00.000Z",
          parts: [
            Month("1"), Literal("/"), Day("1"), Literal("/"), Year("1"), Literal(" "), Era("AD")
          ],
        },
        {
          date: "0000-01-01T00:00:00.000Z",
          parts: [
            Month("1"), Literal("/"), Day("1"), Literal("/"), Year("1"), Literal(" "), Era("BC")
          ],
        },
      ],
    },
    {
      // "long" era defaults to "short" era format, see link in data/locales/root.txt:
      //   wide:alias{"/LOCALE/calendar/japanese/eras/abbreviated"}
      // CLDR "wide" matches ECMA-402 "long", CLDR "abbreviated" matches ECMA-402 "short" format.
      options: {
        era: "long",
      },
      dates: [
        {
          date: "1970-01-01T00:00:00.000Z",
          parts: [
            Month("1"), Literal("/"), Day("1"), Literal("/"), Year("45"), Literal(" "), Era("Shōwa")
          ],
        },
        {
          date: "1868-10-23T00:00:00.000Z",
          parts: [
            Month("10"), Literal("/"), Day("23"), Literal("/"), Year("1"), Literal(" "), Era("Meiji")
          ],
        },
        {
          date: "1868-10-22T00:00:00.000Z",
          parts: [
            Month("10"), Literal("/"), Day("22"), Literal("/"), Year("1868"), Literal(" "), Era("AD")
          ],
        },
        {
          date: "0001-01-01T00:00:00.000Z",
          parts: [
            Month("1"), Literal("/"), Day("1"), Literal("/"), Year("1"), Literal(" "), Era("AD")
          ],
        },
        {
          date: "0000-01-01T00:00:00.000Z",
          parts: [
            Month("1"), Literal("/"), Day("1"), Literal("/"), Year("1"), Literal(" "), Era("BC")
          ],
        },
      ],
    },
  ],
  "ja": [
    {
      options: {
        // defaults to "narrow" era
      },
      dates: [
        {
          date: "1970-01-01T00:00:00.000Z",
          parts: [
            Era("S"), Year("45"), Literal("/"), Month("1"), Literal("/"), Day("1"),
          ],
        },
        {
          date: "1868-10-23T00:00:00.000Z",
          parts: [
            Era("M"), Year("1"), Literal("/"), Month("10"), Literal("/"), Day("23"),
          ],
        },
        {
          date: "1868-10-22T00:00:00.000Z",
          parts: [
            Era("AD"), Year("1868"), Literal("/"), Month("10"), Literal("/"), Day("22"),
          ],
        },
        {
          date: "0001-01-01T00:00:00.000Z",
          parts: [
            Era("AD"), Year("1"), Literal("/"), Month("1"), Literal("/"), Day("1"),
          ],
        },
        {
          date: "0000-01-01T00:00:00.000Z",
          parts: [
            Era("BC"), Year("1"), Literal("/"), Month("1"), Literal("/"), Day("1"),
          ],
        },
      ],
    },
    {
      options: {
        era: "short",
      },
      dates: [
        {
          date: "1970-01-01T00:00:00.000Z",
          parts: [
            Era("昭和"), Year("45"), Literal("/"), Month("1"), Literal("/"), Day("1"),
          ],
        },
        {
          date: "1868-10-23T00:00:00.000Z",
          parts: [
            Era("明治"), Year("1"), Literal("/"), Month("10"), Literal("/"), Day("23"),
          ],
        },
        {
          date: "1868-10-22T00:00:00.000Z",
          parts: [
            Era("西暦"), Year("1868"), Literal("/"), Month("10"), Literal("/"), Day("22"),
          ],
        },
        {
          date: "0001-01-01T00:00:00.000Z",
          parts: [
            Era("西暦"), Year("1"), Literal("/"), Month("1"), Literal("/"), Day("1"),
          ],
        },
        {
          date: "0000-01-01T00:00:00.000Z",
          parts: [
            Era("紀元前"), Year("1"), Literal("/"), Month("1"), Literal("/"), Day("1"),
          ],
        },
      ],
    },
    {
      options: {
        // defaults to "short" era
        year: "numeric",
      },
      dates: [
        {
          date: "1970-01-01T00:00:00.000Z",
          parts: [
            Era("昭和"), Year("45"), Literal("年")
          ],
        },
        {
          date: "1868-10-23T00:00:00.000Z",
          parts: [
            Era("明治"), Year("元"), Literal("年")
          ],
        },
        {
          date: "1868-10-22T00:00:00.000Z",
          parts: [
            Era("西暦"), Year("1868"), Literal("年")
          ],
        },
        {
          date: "0001-01-01T00:00:00.000Z",
          parts: [
            Era("西暦"), Year("1"), Literal("年")
          ],
        },
        {
          date: "0000-01-01T00:00:00.000Z",
          parts: [
            Era("紀元前"), Year("1"), Literal("年")
          ],
        },
      ],
    },
  ],
  "de": [
    {
      options: {
        // defaults to "narrow" era
      },
      dates: [
        {
          date: "1970-01-01T00:00:00.000Z",
          parts: [
            Day("1"), Literal("."), Month("1"), Literal("."), Year("45"), Literal(" "), Era("S")
          ],
        },
        {
          date: "1800-01-01T00:00:00.000Z",
          parts: [
            Day("1"), Literal("."), Month("1"), Literal("."), Year("1800"), Literal(" "), Era("n. Chr.")
          ],
        },
        {
          date: "0000-01-01T00:00:00.000Z",
          parts: [
            Day("1"), Literal("."), Month("1"), Literal("."), Year("1"), Literal(" "), Era("v. Chr.")
          ],
        },
      ],
    },
  ],
  "zh": [
    {
      options: {
        // defaults to "short" era
      },
      dates: [
        {
          date: "1970-01-01T00:00:00.000Z",
          parts: [
            Era("昭和"), Year("45"), Literal("-"), Month("01"), Literal("-"), Day("01"),
          ],
        },
        {
          date: "1800-01-01T00:00:00.000Z",
          parts: [
            Era("公元"), Year("1800"), Literal("-"), Month("01"), Literal("-"), Day("01"),
          ],
        },
        {
          date: "0000-01-01T00:00:00.000Z",
          parts: [
            Era("公元前"), Year("1"), Literal("-"), Month("01"), Literal("-"), Day("01"),
          ],
        },
      ],
    },
    {
      options: {
        era: "narrow",
      },
      dates: [
        {
          date: "1970-01-01T00:00:00.000Z",
          parts: [
            Era("S"), Year("45"), Literal("-"), Month("01"), Literal("-"), Day("01"),
          ],
        },
        {
          date: "1800-01-01T00:00:00.000Z",
          parts: [
            Era("公元"), Year("1800"), Literal("-"), Month("01"), Literal("-"), Day("01"),
          ],
        },
        {
          date: "0000-01-01T00:00:00.000Z",
          parts: [
            Era("公元前"), Year("1"), Literal("-"), Month("01"), Literal("-"), Day("01"),
          ],
        },
      ],
    },
  ],
};

const defaultEraFormat = {
  "en": "narrow",
  "ja": "narrow",
  "de": "narrow",
  "zh": "short",
};

for (let locale of Object.keys(tests)) {
  assertEq(locale in defaultEraFormat, true, `missing default era format for: ${locale}`);

  let dtf = new Intl.DateTimeFormat(locale, {calendar, timeZone});
  assertEq(dtf.resolvedOptions().era, defaultEraFormat[locale], `bad default era format for: ${locale}`);
}

for (let [locale, inputs] of Object.entries(tests)) {
  for (let {options, dates} of inputs) {
    let dtf = new Intl.DateTimeFormat(locale, {calendar, timeZone, ...options});
    for (let {date, parts} of dates) {
      let d = new Date(date);
      assertEq(d.toISOString(), date);
      assertParts(dtf, d, parts);
    }
  }
}

if (typeof reportCompare === "function")
  reportCompare(0, 0);

Messung V0.5 in Prozent
C=81 H=92 G=86

¤ Dauer der Verarbeitung: 0.10 Sekunden  (vorverarbeitet am  2026-10-12) ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

PVS Prover

Isabelle Prover

NIST Cobol Testsuite

Cephes Mathematical Library

Vienna Development Method

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.