# General Translation Platform: getLocaleName
URL: https://generaltranslation.com/es/docs/platform/core/reference/utility-functions/locales/get-locale-name.mdx
Docs index: https://generaltranslation.com/llms.txt
Description: Devuelve el nombre para mostrar legible de una configuración regional sin una instancia de GT. Referencia de la API de getLocaleName.

[`getLocaleName`](/docs/platform/core/reference/gt-class-methods/locales/get-locale-name) es una función de utilidad independiente de la biblioteca Core de General Translation que devuelve el nombre para mostrar de un código de configuración regional. Usa la API `Intl.DisplayNames` para generar un nombre localizado para cualquier código de configuración regional BCP-47 válido.

## Descripción general [#overview]

Importa `getLocaleName` directamente desde `generaltranslation` y úsalo con un código de configuración regional y, opcionalmente, una configuración regional de visualización. No requiere un API key ni una instancia de [GT](/docs/platform/core/reference/gt-class/constructor). Para la versión equivalente basada en instancias, usa el método [`getLocaleName`](/docs/platform/core/reference/gt-class-methods/locales/get-locale-name) de una instancia de [`GT`](/docs/platform/core/reference/gt-class/constructor).

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

const name = getLocaleName('fr-CA', 'en');
console.log(name); // "Canadian French" (francés canadiense)
```

Firma:

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

## Cómo funciona [#how-it-works]

### Resolución del idioma de visualización

La función localiza los nombres según esta prioridad:

1. El parámetro `defaultLocale`, si se proporciona.
2. La configuración regional predeterminada de la biblioteca, `en`.

### Integración de mapeo personalizado

* Los mapeos personalizados se consultan primero tanto para los códigos de configuración regional como para los nombres.
* Admite la resolución de alias y nombres para mostrar personalizados.
* Recurre a `Intl.DisplayNames` estándar para los códigos que no tienen mapeo.

### Estrategia de resolución de nombres

1. **Nombre del mapeo personalizado** (máxima prioridad).
2. **`Intl.DisplayNames`** en la configuración regional predeterminada.
3. **`Intl.DisplayNames`** en la configuración regional predeterminada de la biblioteca (`en`).
4. **Una cadena vacía** (valor de reserva).

*Nota: el nombre para mostrar usa la forma de dialecto de CLDR, por lo que `fr-CA` se resuelve en &quot;Canadian French&quot; y `es-ES` en &quot;European Spanish&quot;, no en &quot;French (Canada)&quot; ni &quot;Spanish (Spain)&quot;. Un idioma base como `es` se resuelve en &quot;Spanish&quot;, sin región.*

## Parámetros [#parameters]

| Parámetro                          | Descripción                                                                         | Tipo                                                                  | Opcional | Predeterminado |
| ---------------------------------- | ----------------------------------------------------------------------------------- | --------------------------------------------------------------------- | -------- | -------------- |
| [`locale`](#locale)                | Código de configuración regional BCP-47 cuyo nombre para mostrar se quiere obtener. | `string`                                                              | No       | —              |
| [`defaultLocale`](#default-locale) | Configuración regional que se usa para localizar el nombre para mostrar.            | `string`                                                              | Sí       | `en`           |
| [`customMapping`](#custom-mapping) | Mapeo personalizado para códigos de configuración regional y nombres.               | [`CustomMapping`](/docs/platform/core/reference/types/custom-mapping) | Sí       | —              |

### `locale` [#locale]

**Tipo** `string` · **Obligatorio**

El código de configuración regional BCP-47 cuyo nombre para mostrar se quiere obtener.

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

**Tipo** `string` · **Opcional** · **Predeterminado** `en`

La configuración regional que se usa para localizar el nombre para mostrar que se devuelve.

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

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

Un mapeo personalizado opcional para los códigos y nombres de configuración regional.

## Devuelve [#returns]

**Tipo** `string`

El nombre para mostrar localizado de la configuración regional. Devuelve una cadena vacía si no se puede determinar un nombre para mostrar.

## Ejemplos [#examples]

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

// Nombres para mostrar en inglés
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';

// Construyendo opciones de configuración regional para un selector
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: '🇪🇸' },
//   ...
// ]
```

## Notas [#notes]

* Los mapeos personalizados tienen prioridad sobre `Intl.DisplayNames`.
* Devuelve una cadena vacía si no se puede determinar un nombre para mostrar.
* El parámetro `defaultLocale` determina el idioma del nombre devuelto.

## Sitemap

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