---
createdAt: 2024-08-11
updatedAt: 2025-06-29
title: Documentation de la fonction getLocaleName | intlayer
description: Découvrez comment utiliser la fonction getLocaleName pour le package intlayer
keywords:
  - getLocaleName
  - traduction
  - Intlayer
  - intlayer
  - Internationalisation
  - Documentation
  - Next.js
  - JavaScript
  - React
slugs:
  - doc
  - packages
  - intlayer
  - getLocaleName
history:
  - version: 7.5.0
    date: 2025-12-18
    changes: Ajout de polyfills pour React Native et les environnements plus anciens
  - version: 5.5.10
    date: 2025-06-29
    changes: Historique initial
---

# Documentation : Fonction `getLocaleName` dans `intlayer`

## Description

La fonction `getLocaleName` renvoie le nom localisé d'une locale donnée (`targetLocale`) dans la locale d'affichage (`displayLocale`). Si aucune `targetLocale` n'est fournie, elle renvoie le nom de la `displayLocale` dans sa propre langue.

## Paramètres

- `displayLocale: Locales`
  - **Description** : La locale dans laquelle le nom de la locale cible sera affiché.
  - **Type** : Enum ou chaîne de caractères représentant des locales valides.

- `targetLocale?: Locales`
  - **Description** : La locale dont le nom doit être localisé.
  - **Type** : Optionnel. Enum ou chaîne de caractères représentant des locales valides.

## Retour

- **Type** : `string`
- **Description** : Le nom localisé de la `targetLocale` dans la `displayLocale`, ou le nom propre de la `displayLocale` si `targetLocale` n'est pas fourni. Si aucune traduction n'est trouvée, elle renvoie `"Locale inconnue"`.

## Exemple d'utilisation

```typescript codeFormat="typescript"
import { Locales, getLocaleName } from "intlayer";

getLocaleName(Locales.ENGLISH); // Résultat : "English"
getLocaleName(Locales.ENGLISH, Locales.FRENCH); // Résultat : "Anglais"
getLocaleName(Locales.ENGLISH, Locales.ESPANOL); // Résultat : "Inglés"
getLocaleName(Locales.ENGLISH, Locales.ENGLISH); // Résultat : "English"

getLocaleName(Locales.FRENCH); // Résultat : "Français"
getLocaleName(Locales.FRENCH, Locales.FRENCH); // Résultat : "Français"
getLocaleName(Locales.FRENCH, Locales.ESPANOL); // Résultat : "Francés"
getLocaleName(Locales.FRENCH, Locales.ENGLISH); // Résultat : "French"

getLocaleName(Locales.CHINESE); // Résultat : "中文"
getLocaleName(Locales.CHINESE, Locales.FRENCH); // Résultat : "Chinois"
getLocaleName(Locales.CHINESE, Locales.ESPANOL); // Résultat : "Chino"
getLocaleName(Locales.CHINESE, Locales.ENGLISH); // Résultat : "Chinese"

getLocaleName("unknown-locale"); // Résultat : "Locale inconnue"
```

```javascript codeFormat="esm"
import { Locales, getLocaleName } from "intlayer";

getLocaleName(Locales.ENGLISH); // Résultat : "English"
getLocaleName(Locales.ENGLISH, Locales.FRENCH); // Résultat : "Anglais"
getLocaleName(Locales.ENGLISH, Locales.ESPANOL); // Résultat : "Inglés"
getLocaleName(Locales.ENGLISH, Locales.ENGLISH); // Résultat : "English"

getLocaleName(Locales.FRENCH); // Résultat : "Français"
getLocaleName(Locales.FRENCH, Locales.FRENCH); // Résultat : "Français"
getLocaleName(Locales.FRENCH, Locales.ESPANOL); // Résultat : "Francés"
getLocaleName(Locales.FRENCH, Locales.ENGLISH); // Résultat : "French"

getLocaleName(Locales.CHINESE); // Résultat : "中文"
getLocaleName(Locales.CHINESE, Locales.FRENCH); // Résultat : "Chinois"
getLocaleName(Locales.CHINESE, Locales.ESPANOL); // Résultat : "Chino"
getLocaleName(Locales.CHINESE, Locales.ENGLISH); // Résultat : "Chinese"

getLocaleName("unknown-locale"); // Résultat : "Locale inconnue"
```

```javascript codeFormat="commonjs"
const { Locales, getLocaleName } = require("intlayer");

getLocaleName(Locales.ENGLISH); // Résultat : "English"
getLocaleName(Locales.ENGLISH, Locales.FRENCH); // Résultat : "Anglais"
getLocaleName(Locales.ENGLISH, Locales.ESPANOL); // Résultat : "Inglés"
getLocaleName(Locales.ENGLISH, Locales.ENGLISH); // Résultat : "English"

getLocaleName(Locales.FRENCH); // Résultat : "Français"
getLocaleName(Locales.FRENCH, Locales.FRENCH); // Résultat : "Français"
getLocaleName(Locales.FRENCH, Locales.ESPANOL); // Résultat : "Francés"
getLocaleName(Locales.FRENCH, Locales.ENGLISH); // Résultat : "French"

getLocaleName(Locales.CHINESE); // Résultat : "中文"
getLocaleName(Locales.CHINESE, Locales.FRENCH); // Résultat : "Chinois"
getLocaleName(Locales.CHINESE, Locales.ESPANOL); // Résultat : "Chino"
getLocaleName(Locales.CHINESE, Locales.ENGLISH); // Résultat : "Chinese"

getLocaleName("unknown-locale"); // Résultat : "Locale inconnue"
```

## Cas particuliers

- **Pas de `targetLocale` fourni :**
  - La fonction retourne par défaut le nom propre du `displayLocale`.
- **Traductions manquantes :**
  - Si `localeNameTranslations` ne contient pas d'entrée pour le `targetLocale` ou le `displayLocale` spécifique, la fonction revient au `ownLocalesName` ou retourne `"Unknown locale"`.

## Polyfills pour React Native et les environnements plus anciens

La fonction `getLocaleName` dépend de l'API `Intl.DisplayNames`, qui n'est pas disponible dans React Native ou les environnements JavaScript plus anciens. Si vous utilisez `getLocaleName` dans ces environnements, vous devez ajouter des polyfills.

Importez les polyfills tôt dans votre application, idéalement dans votre fichier d'entrée (par exemple, `index.js`, `App.tsx`, ou `main.tsx`) :

```typescript
import "intl";
import "@formatjs/intl-locale/polyfill";
import "@formatjs/intl-displaynames/polyfill";
```

Pour plus de détails, consultez la [documentation des polyfills FormatJS](https://formatjs.io/docs/polyfills/intl-displaynames/).
