Cette page a été traduite à partir de l'anglais par la communauté. Vous pouvez contribuer en rejoignant la communauté francophone sur MDN Web Docs.

View in English Always switch to English

Intl.DisplayNames : méthode of()

Baseline Widely available

Cette fonctionnalité est bien établie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis avril 2021.

La méthode of() des instances de Intl.DisplayNames reçoit un code et retourne une chaîne de caractères selon la locale et les options définies lors de l'instanciation de cet objet Intl.DisplayNames.

Exemple interactif

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

console.log(regionNamesInEnglish.of('US'));
// Résultat attendu : "United States"

console.log(regionNamesInTraditionalChinese.of('US'));
// Résultat attendu : "美國"

Syntaxe

js
of(code)

Paramètres

code

Le code à fournir dépend du type :

Valeur de retour

Une chaîne de caractères formatée spécifique à une langue, ou undefined s'il n'y a pas de données pour l'entrée et que fallback est "none".

Note : fallback n'est utilisé que si code est structurellement valide. Voir utiliser une fonction de repli.

Exemples

Utiliser la méthode 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"

Utiliser une fonction de repli

Quand le Intl.DisplayNames est construit avec fallback: "code", la méthode of() retourne le code si l'entrée est structurellement valide mais qu'aucune donnée n'est disponible pour cette entrée. Si fallback est "none", undefined est retourné.

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

Cependant, cela ne s'applique que si le code est structurellement valide. Par exemple, si type est "region" mais que code ne suit pas la grammaire unicode_region_subtag (2 caractères alphabétiques ou 3 caractères numériques), un RangeError est directement levé au lieu d'utiliser la fonction de repli.

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

Spécifications

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

Compatibilité des navigateurs

Voir aussi