# General Translation Platform: formatNum URL: https://generaltranslation.com/it/docs/platform/core/reference/utility-functions/formatting/format-num.mdx --- title: formatNum description: Formatta numeri, valute, percentuali e valori numerici senza un'istanza di GT. Riferimento API per formatNum. --- [`formatNum`](/docs/platform/core/reference/gt-class-methods/formatting/format-num) è una funzione di utilità indipendente della libreria core di General Translation che formatta i numeri secondo convenzioni specifiche dell'impostazione regionale. Restituisce una stringa adattata all'impostazione regionale per decimali, valute, percentuali e unità. ## Panoramica [#overview] Importa `formatNum` direttamente da `generaltranslation` e chiamalo con il numero da formattare e un oggetto options. Non richiede una chiave API né un'istanza di [GT](/docs/platform/core/reference/gt-class/constructor), quindi usalo ovunque ti serva formattare un numero una tantum. Per una formattazione tramite istanza che eredita l'impostazione regionale dell'istanza, usa invece il metodo [`formatNum`](/docs/platform/core/reference/gt-class-methods/formatting/format-num) su un'istanza di [`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', }); // Restituisce: "1.234,56 €" ``` Sintassi: ```typescript formatNum( number: number, options?: { locales?: string | string[] } & Intl.NumberFormatOptions ): string ``` ## Come funziona [#how-it-works] * **API sottostante.** Usa lo stesso [`Intl.NumberFormat`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/NumberFormat) del metodo della classe GT, quindi supporta tutte le opzioni standard di `Intl.NumberFormat`. * **Risoluzione dell'impostazione regionale.** Quando `locales` è un array, le impostazioni regionali vengono provate in ordine e viene usata la prima impostazione regionale supportata. Quando `locales` viene omesso, viene usata come fallback l'impostazione regionale predefinita della libreria, `en`. * **Caching.** I risultati vengono memorizzati internamente nella cache per ottimizzare le prestazioni quando si ripetono le stesse combinazioni di impostazioni regionali e opzioni. ## Parametri [#parameters] | Parametro | Descrizione | Tipo | Facoltativo | Predefinito | | --------------------- | ------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------- | ----------- | ----------- | | [`number`](#number) | Il numero da formattare. | `number` | No | — | | [`options`](#options) | Configurazione di formattazione, incluse le impostazioni regionali di destinazione ed eventuali opzioni di `Intl.NumberFormat`. | `{ locales?: string \| string[] } & Intl.NumberFormatOptions` | Sì | `{}` | ### `number` [#number] **Tipo** `number` · **Obbligatorio** Valore numerico da formattare. ### `options` [#options] **Tipo** `{ locales?: string | string[] } & Intl.NumberFormatOptions` · **Facoltativo** · **Predefinito** `{}` Configurazione della formattazione. Oltre a `locales`, sono accettate tutte le opzioni di [`Intl.NumberFormat`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/NumberFormat). I campi più comuni sono: | Proprietà | Descrizione | Tipo | Facoltativo | Predefinito | | ----------------------- | ----------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------- | ----------- | ------------ | | `locales` | Impostazioni regionali per la formattazione. Se viene passato un array, vengono provate nell'ordine indicato. | `string \| string[]` | Sì | `en` | | `style` | Stile di formattazione dei numeri. | `'decimal' \| 'currency' \| 'percent' \| 'unit'` | Sì | `'decimal'` | | `currency` | Codice Currency (obbligatorio quando `style` è `'currency'`). | `string` | Sì | — | | `minimumIntegerDigits` | Numero minimo di cifre intere (1–21). | `number` | Sì | — | | `minimumFractionDigits` | Numero minimo di cifre decimali (0–20). | `number` | Sì | — | | `maximumFractionDigits` | Numero massimo di cifre decimali (0–20). | `number` | Sì | — | | `useGrouping` | Indica se usare i separatori delle migliaia. | `boolean \| 'always' \| 'auto' \| 'min2'` | Sì | `'auto'` | | `notation` | Formato di notazione dei numeri. | `'standard' \| 'scientific' \| 'engineering' \| 'compact'` | Sì | `'standard'` | ## Restituisce [#returns] **Tipo** `string` Il numero formattato in base alle convenzioni dell'impostazione regionale. ## Esempi [#examples] ```typescript import { formatNum } from 'generaltranslation'; // Formattazione numerica di base console.log(formatNum(1234.567, { locales: 'en-US' })); // Output: "1,234.567" // Formattazione tedesca console.log(formatNum(1234.567, { locales: 'de-DE' })); // Output: "1.234,567" ``` ```typescript // Formattazione valuta // Dollaro statunitense console.log(formatNum(1234.56, { locales: 'en-US', style: 'currency', currency: 'USD', })); // Output: "$1,234.56" // Euro con impostazione regionale tedesca console.log(formatNum(1234.56, { locales: 'de-DE', style: 'currency', currency: 'EUR', })); // Output: "1.234,56 €" // Yen giapponese console.log(formatNum(1234.56, { locales: 'ja-JP', style: 'currency', currency: 'JPY', })); // Output: "¥1,235" ``` ## Note [#notes] * Usa lo stesso `Intl.NumberFormat` sottostante del metodo della classe GT. * I risultati vengono memorizzati internamente nella cache per migliorare le prestazioni con combinazioni ripetute di impostazione regionale e opzioni. * Le impostazioni regionali di fallback vengono elaborate in ordine se l'impostazione regionale principale non è supportata. * Sono supportate tutte le opzioni standard di `Intl.NumberFormat`.