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 des Intl.DisplayNames Objekts angegebenen Lokalisierung und Optionen 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
of(code)
Parameter
code-
Der bereitzustellende
codehängt vomtypeab:- Ist der Typ "region", sollte
codeentweder ein zwei-buchstabiger ISO 3166 Regionscode oder ein drei-ziffriger UN M49 geografischer Regionen-Code sein. Er muss der Grammatik desunicode_region_subtagfolgen. Verwenden Sie Großbuchstabencodes (z.B."US"), da Kleinbuchstabencodes (z.B."us") möglicherweise nicht überall zuverlässig funktionieren. - Ist der Typ "script", sollte
codeein vier-buchstabiger ISO 15924 Skriptcode sein. Er muss der Grammatik desunicode_script_subtagfolgen. - Ist der Typ "language", sollte
codemit demunicode_language_idNichtterminal übereinstimmen. - Ist der Typ "currency", sollte
codeein drei-buchstabiger ISO 4217 Währungscode sein. Er muss genau drei alphabetische Zeichen haben. - Ist der Typ "dateTimeField", sollte
codeeiner der folgenden sein:"era","year","quarter","month","weekOfYear","weekday","day","dayPeriod","hour","minute","second","timeZoneName". - Ist der Typ "calendar", sollte
codeein Kalenderschlüssel sein. Er muss dertype-Grammatik eines Unicode-Lokalisierungsidentifikators folgen.
- Ist der Typ "region", sollte
Rückgabewert
Ein sprachspezifisch formatierter String oder undefined, wenn keine Daten für die Eingabe vorhanden sind und fallback "none" ist.
Hinweis:
fallback wird nur verwendet, wenn code strukturell gültig ist. Siehe die Verwendung von Fallback.
Ausnahmen
RangeError-
Wird ausgelöst, wenn
codestrukturell ungültig für den angegebenentypeist.
Beispiele
>Verwendung der of Methode
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 wird, gibt die of() Methode den code zurück, wenn die Eingabe strukturell gültig aussieht, aber keine Daten für die Eingabe vorhanden sind. Ist fallback "none", wird undefined zurückgegeben.
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. Wenn z.B. type "region" ist, aber code nicht der Grammatik des unicode_region_subtag (2 alphabetische Zeichen oder 3 numerische Zeichen) folgt, wird ein RangeError direkt geworfen, anstatt den Fallback zu verwenden.
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
Loading…