# General Translation Platform: getLocaleName
URL: https://generaltranslation.com/it/docs/platform/core/reference/utility-functions/locales/get-locale-name.mdx
Docs index: https://generaltranslation.com/llms.txt
Description: Restituisce un nome leggibile di un'impostazione regionale senza un'istanza GT. Riferimento API per getLocaleName.

[`getLocaleName`](/docs/platform/core/reference/gt-class-methods/locales/get-locale-name) è una funzione di utilità autonoma della libreria core di General Translation che restituisce il nome leggibile di un codice locale. Usa l&#39;API `Intl.DisplayNames` per ottenere un nome localizzato per qualsiasi codice locale BCP-47 valido.

## Panoramica [#overview]

Importa `getLocaleName` direttamente da `generaltranslation` e chiamalo con un codice locale e, facoltativamente, un&#39;impostazione regionale per la visualizzazione. Non richiede una chiave API né un&#39;istanza di [GT](/docs/platform/core/reference/gt-class/constructor). Per l&#39;equivalente basato su istanza, usa invece il metodo [`getLocaleName`](/docs/platform/core/reference/gt-class-methods/locales/get-locale-name) su un&#39;istanza di [`GT`](/docs/platform/core/reference/gt-class/constructor).

```typescript
import { getLocaleName } from 'generaltranslation';

const name = getLocaleName('fr-CA', 'en');
console.log(name); // "Canadian French" (francese canadese)
```

Firma:

```typescript
getLocaleName(
  locale: string,
  defaultLocale?: string,
  customMapping?: CustomMapping
): string
```

## Come funziona [#how-it-works]

### Risoluzione della lingua di visualizzazione

La funzione localizza i nomi secondo questo ordine di priorità:

1. Il parametro `defaultLocale`, se specificato.
2. L&#39;impostazione regionale predefinita della libreria, `en`.

### Integrazione della mappatura personalizzata

* Le mappature personalizzate vengono verificate per prime, sia per i codici locale sia per i nomi.
* Supporta la risoluzione degli alias e i nomi di visualizzazione personalizzati.
* Per i codici non mappati, usa come fallback lo standard `Intl.DisplayNames`.

### Strategia di risoluzione del nome

1. **Nome della mappatura personalizzata** (priorità massima).
2. **`Intl.DisplayNames`** nell&#39;impostazione regionale predefinita.
3. **`Intl.DisplayNames`** nell&#39;impostazione regionale predefinita della libreria (`en`).
4. **Una stringa vuota** (fallback).

*Nota: il nome visualizzato usa la forma dialect di CLDR, quindi `fr-CA` si risolve in &quot;francese canadese&quot; e `es-ES` in &quot;spagnolo europeo&quot; — non &quot;francese (Canada)&quot; o &quot;spagnolo (Spagna)&quot;. Una lingua di base come `es` si risolve in &quot;spagnolo&quot;, senza regione.*

## Parametri [#parameters]

| Parametro                          | Descrizione                                                        | Tipo                                                                  | Facoltativo | Predefinito |
| ---------------------------------- | ------------------------------------------------------------------ | --------------------------------------------------------------------- | ----------- | ----------- |
| [`locale`](#locale)                | Codice locale BCP-47 di cui recuperare il nome visualizzato.       | `string`                                                              | No          | —           |
| [`defaultLocale`](#default-locale) | Impostazione regionale usata per localizzare il nome visualizzato. | `string`                                                              | Sì          | `en`        |
| [`customMapping`](#custom-mapping) | Mappatura personalizzata per codici locale e nomi.                 | [`CustomMapping`](/docs/platform/core/reference/types/custom-mapping) | Sì          | —           |

### `locale` [#locale]

**Tipo** `string` · **Obbligatorio**

Il codice locale BCP-47 per cui ottenere il nome visualizzato.

### `defaultLocale` [#default-locale]

**Tipo** `string` · **Facoltativo** · **Predefinito** `en`

L&#39;impostazione regionale utilizzata per localizzare il nome visualizzato restituito.

### `customMapping` [#custom-mapping]

**Tipo** [`CustomMapping`](/docs/platform/core/reference/types/custom-mapping) · **Facoltativo**

Una mappatura personalizzata facoltativa per i codici locale e i nomi.

## Restituisce [#returns]

**Tipo** `string`

Il nome visualizzato localizzato dell&#39;impostazione regionale. Restituisce una stringa vuota se non è possibile determinare il nome visualizzato.

## Esempi [#examples]

```typescript
import { getLocaleName } from 'generaltranslation';

// Nomi visualizzati in inglese
console.log(getLocaleName('es', 'en')); // "Spanish"
console.log(getLocaleName('ja', 'en')); // "Japanese"
console.log(getLocaleName('zh', 'en')); // "Chinese"
console.log(getLocaleName('fr-CA', 'en')); // "Canadian French"
console.log(getLocaleName('es-ES', 'en')); // "European Spanish"
```

```typescript
import { getLocaleName, getLocaleEmoji } from 'generaltranslation';

// Costruzione delle opzioni di impostazione regionale per un selettore
function buildLocaleOptions(
  supportedLocales: string[],
  displayLocale: string = 'en'
) {
  return supportedLocales.map((locale) => ({
    value: locale,
    label: getLocaleName(locale, displayLocale),
    emoji: getLocaleEmoji(locale),
  }));
}

const options = buildLocaleOptions(['en', 'es', 'fr', 'de', 'ja'], 'en');

console.log(options);
// [
//   { value: 'en', label: 'English', emoji: '🇺🇸' },
//   { value: 'es', label: 'Spanish', emoji: '🇪🇸' },
//   ...
// ]
```

## Note [#notes]

* Le mappature personalizzate hanno la precedenza su `Intl.DisplayNames`.
* Restituisce una stringa vuota se non è possibile determinare un nome visualizzato.
* Il parametro `defaultLocale` determina la lingua del nome restituito.

## Sitemap

See the full [sitemap](https://generaltranslation.com/sitemap.md) for all pages.
