# General Translation Platform: formatNum URL: https://generaltranslation.com/es/docs/platform/core/reference/utility-functions/formatting/format-num.mdx --- title: formatNum description: Da formato a números, monedas, porcentajes y valores numéricos sin necesidad de una instancia de GT. Referencia de la API de formatNum. --- [`formatNum`](/docs/platform/core/reference/gt-class-methods/formatting/format-num) es una función de utilidad independiente de la biblioteca Core de General Translation que da formato a números según las convenciones específicas de la configuración regional. Devuelve una cadena con formato según la configuración regional para decimales, monedas, porcentajes y unidades. ## Descripción general [#overview] Importa `formatNum` directamente desde `generaltranslation` y llámalo con el número que quieras formatear y un objeto de opciones. No requiere una clave de API ni una instancia de [GT](/docs/platform/core/reference/gt-class/constructor), así que úsalo donde necesites formatear un número de forma puntual. Si quieres un formateo basado en instancias que herede la configuración regional de la instancia, usa en su lugar el método [`formatNum`](/docs/platform/core/reference/gt-class-methods/formatting/format-num) de una instancia de [`GT`](/docs/platform/core/reference/gt-class/constructor). ```typescript import { formatNum } from 'generaltranslation'; const formatted = formatNum(1234.56, { locales: 'de-DE', style: 'currency', currency: 'EUR', }); // Devuelve: "1.234,56 €" ``` Firma: ```typescript formatNum( number: number, options?: { locales?: string | string[] } & Intl.NumberFormatOptions ): string ``` ## Cómo funciona [#how-it-works] * **API subyacente.** Usa el mismo [`Intl.NumberFormat`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/NumberFormat) que el método de la clase GT, por lo que admite todas las opciones estándar de `Intl.NumberFormat`. * **Resolución de la configuración regional.** Cuando `locales` es un array, las configuraciones regionales se prueban en orden y se usa la primera compatible. Cuando se omite `locales`, se usa como valor predeterminado la configuración regional de la biblioteca, `en`. * **Almacenamiento en caché.** Los resultados se almacenan internamente en caché para mejorar el rendimiento cuando se repiten las mismas combinaciones de configuración regional y opciones. ## Parámetros [#parameters] | Parámetro | Descripción | Tipo | Opcional | Predeterminado | | --------------------- | ----------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------- | -------- | -------------- | | [`number`](#number) | El número que se va a formatear. | `number` | No | — | | [`options`](#options) | La configuración de formato, incluidas las configuraciones regionales de destino y las opciones de `Intl.NumberFormat`. | `{ locales?: string \| string[] } & Intl.NumberFormatOptions` | Sí | `{}` | ### `number` [#number] **Tipo** `number` · **Obligatorio** El valor numérico que se debe formatear. ### `options` [#options] **Tipo** `{ locales?: string | string[] } & Intl.NumberFormatOptions` · **Opcional** · **Predeterminado** `{}` Configuración de formato. Además de `locales`, acepta cualquier opción de [`Intl.NumberFormat`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/NumberFormat). Los campos más comunes: | Propiedad | Descripción | Tipo | Opcional | Predeterminado | | ----------------------- | ----------------------------------------------------------------------------- | ---------------------------------------------------------- | -------- | -------------- | | `locales` | Configuración regional de formato. Si se pasa una lista, se prueban en orden. | `string \| string[]` | Sí | `en` | | `style` | Estilo de formato numérico. | `'decimal' \| 'currency' \| 'percent' \| 'unit'` | Sí | `'decimal'` | | `currency` | código de divisa ISO 4217 (obligatorio cuando `style` es `'currency'`). | `string` | Sí | — | | `minimumIntegerDigits` | Número mínimo de dígitos enteros (1–21). | `number` | Sí | — | | `minimumFractionDigits` | Número mínimo de dígitos fraccionarios (0–20). | `number` | Sí | — | | `maximumFractionDigits` | Número máximo de dígitos fraccionarios (0–20). | `number` | Sí | — | | `useGrouping` | Si se deben usar separadores de agrupación. | `boolean \| 'always' \| 'auto' \| 'min2'` | Sí | `'auto'` | | `notation` | Formato de notación numérica. | `'standard' \| 'scientific' \| 'engineering' \| 'compact'` | Sí | `'standard'` | ## Devuelve [#returns] **Tipo** `string` El número con el formato correspondiente según las convenciones de la configuración regional. ## Ejemplos [#examples] ```typescript import { formatNum } from 'generaltranslation'; // Formato numérico básico console.log(formatNum(1234.567, { locales: 'en-US' })); // Salida: "1,234.567" // Formato alemán console.log(formatNum(1234.567, { locales: 'de-DE' })); // Salida: "1.234,567" ``` ```typescript // Formato de moneda // Dólar estadounidense console.log(formatNum(1234.56, { locales: 'en-US', style: 'currency', currency: 'USD', })); // Salida: "$1,234.56" // Euro con configuración regional alemana console.log(formatNum(1234.56, { locales: 'de-DE', style: 'currency', currency: 'EUR', })); // Salida: "1.234,56 €" // Yen japonés console.log(formatNum(1234.56, { locales: 'ja-JP', style: 'currency', currency: 'JPY', })); // Salida: "¥1,235" ``` ## Notas [#notes] * Usa el mismo `Intl.NumberFormat` subyacente que el método de la clase GT. * Los resultados se almacenan en caché internamente para mejorar el rendimiento cuando se repiten las combinaciones de configuración regional y opciones. * Las configuraciones regionales de respaldo se procesan en orden si la configuración regional principal no es compatible. * Se admiten todas las opciones estándar de `Intl.NumberFormat`.