Intl.DisplayNames.prototype.of()

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since April 2021.

Die of() Methode von Intl.DisplayNames Instanzen erhält einen Code und gibt einen String basierend auf der beim Erstellen dieses Intl.DisplayNames Objekts angegebenen Locale und Options zurück.

Probieren Sie es aus

const regionNamesInEnglish = new Intl.DisplayNames(["en"], { type: "region" });
const regionNamesInTraditionalChinese = new Intl.DisplayNames(["zh-Hant"], {
  type: "region",
});

console.log(regionNamesInEnglish.of("US"));
// Expected output: "United States"

console.log(regionNamesInTraditionalChinese.of("US"));
// Expected output: "美國"

Syntax

js
of(code)

Parameter

code

Der bereitzustellende code hängt vom type ab:

Rückgabewert

Ein sprachspezifisch formatierter String oder undefined, wenn keine Daten für die Eingabe vorhanden sind und fallback auf "none" gesetzt ist.

Note: fallback wird nur verwendet, wenn code strukturell gültig ist. Siehe using fallback.

Ausnahmen

RangeError

Wird ausgelöst, wenn code für den gegebenen type strukturell ungültig ist.

Beispiele

Verwendung der Methode of

js
const regionNames = new Intl.DisplayNames("en", { type: "region" });
regionNames.of("419"); // "Latin America"

const languageNames = new Intl.DisplayNames("en", { type: "language" });
languageNames.of("fr"); // "French"

const currencyNames = new Intl.DisplayNames("en", { type: "currency" });
currencyNames.of("EUR"); // "Euro"

const languageNamesStandard = new Intl.DisplayNames("fr", {
  type: "language",
  languageDisplay: "standard",
});
languageNamesStandard.of("fr-CA"); // "français (Canada)"

const languageNamesDialect = new Intl.DisplayNames("fr", {
  type: "language",
  languageDisplay: "dialect",
});
languageNamesDialect.of("fr-CA"); // "français canadien"

Verwendung von Fallback

Wenn Intl.DisplayNames mit fallback: "code" erstellt wurde, wird die of()-Methode den code zurückgeben, wenn die Eingabe strukturell gültig aussieht, aber keine Daten für die Eingabe vorhanden sind. Ist fallback auf "none" gesetzt, wird undefined zurückgegeben.

js
console.log(
  new Intl.DisplayNames("en", { type: "region", fallback: "code" }).of("ZL"),
); // "ZL"

console.log(
  new Intl.DisplayNames("en", { type: "region", fallback: "none" }).of("ZL"),
); // undefined

Dies gilt jedoch nur, wenn der code strukturell gültig ist. Zum Beispiel, wenn der type "region" ist, aber code nicht der unicode_region_subtag Grammatik folgt (2 alphabetische Zeichen oder 3 numerische Zeichen), wird direkt ein RangeError geworfen, anstatt den Fallback zu verwenden.

js
console.log(
  new Intl.DisplayNames("en", { type: "region", fallback: "code" }).of("ZLC"),
); // throws RangeError: invalid value "ZLC" for option region

Spezifikationen

Specification
ECMAScript® 2026 Internationalization API Specification
# sec-Intl.DisplayNames.prototype.of

Browser-Kompatibilität

Siehe auch