formatNum
Référence de l’API de la méthode formatNum pour formater les nombres selon les conventions de la locale
Aperçu
La méthode formatNum formate les nombres selon les conventions propres à la locale à l’aide de l’API d’internationalisation.
Elle gère automatiquement les séparateurs décimaux, les séparateurs de milliers et les systèmes de numération en fonction de la locale cible.
const gt = new GT({ targetLocale: 'de' });
const formatted = gt.formatNum(1234.56, {
  style: 'decimal',
  minimumFractionDigits: 2
});
// Retourne : "1.234,56" (formatage numérique allemand)Références
Paramètres
| Nom | Type | Description | 
|---|---|---|
| number | number | Nombre à formater | 
| options? | NumberFormatOptions | Configuration de formatage facultative | 
NumberFormatOptions
Étend Intl.NumberFormatOptions avec une spécification de locale supplémentaire :
| Nom | Type | Description | 
|---|---|---|
| locales? | string | string[] | Remplace les locales utilisées pour le formatage (par défaut : locales de l’instance) | 
| style? | 'decimal' | 'currency' | 'percent' | 'unit' | Style de formatage des nombres | 
| currency? | string | Code de devise (requis lorsque le style est 'currency') | 
| currencyDisplay? | 'symbol' | 'narrowSymbol' | 'code' | 'name' | Manière d’afficher la devise | 
| currencySign? | 'standard' | 'accounting' | Signe monétaire à utiliser | 
| unit? | string | Identifiant d’unité (requis lorsque le style est 'unit') | 
| unitDisplay? | 'short' | 'narrow' | 'long' | Manière d’afficher l’unité | 
| minimumIntegerDigits? | number | Nombre minimal de chiffres entiers (1–21) | 
| minimumFractionDigits? | number | Nombre minimal de décimales (0–20) | 
| maximumFractionDigits? | number | Nombre maximal de décimales (0–20) | 
| minimumSignificantDigits? | number | Nombre minimal de chiffres significatifs (1–21) | 
| maximumSignificantDigits? | number | Nombre maximal de chiffres significatifs (1–21) | 
| useGrouping? | boolean | 'always' | 'auto' | 'min2' | Utilisation des séparateurs de groupement | 
| notation? | 'standard' | 'scientific' | 'engineering' | 'compact' | Format de notation numérique | 
| compactDisplay? | 'short' | 'long' | Style d’affichage en notation compacte | 
| signDisplay? | 'auto' | 'never' | 'always' | 'exceptZero' | Moment d’affichage du signe | 
| roundingMode? | 'ceil' | 'floor' | 'expand' | 'trunc' | 'halfCeil' | 'halfFloor' | 'halfExpand' | 'halfTrunc' | 'halfEven' | Mode d’arrondi | 
| roundingIncrement? | 1 | 2 | 5 | 10 | 20 | 25 | 50 | 100 | Incrément d’arrondi | 
| trailingZeroDisplay? | 'auto' | 'stripIfInteger' | Affichage des zéros finaux | 
Renvoie
string - Nombre mis en forme selon les conventions de la locale.
Exemples
Mise en forme des nombres (basique)
import { GT } from 'generaltranslation';
const gt = new GT({ targetLocale: 'en-US' });
// Formatage décimal de base
console.log(gt.formatNum(1234.567));
// Sortie : "1,234.567"
// Formatage avec la locale allemande
console.log(gt.formatNum(1234.567, { locales: 'de-DE' }));
// Sortie : "1.234,567"
// Formatage avec la locale française  
console.log(gt.formatNum(1234.567, { locales: 'fr-FR' }));
// Sortie : "1 234,567"Mise en forme des devises
// Formatage en dollars américains
console.log(gt.formatNum(1234.56, {
  style: 'currency',
  currency: 'USD'
}));
// Sortie : "$1,234.56"
// Formatage en euros avec locale allemande
console.log(gt.formatNum(1234.56, {
  style: 'currency',
  currency: 'EUR',
  locales: 'de-DE'
}));
// Sortie : "1.234,56 €"
// Options d'affichage de devise
console.log(gt.formatNum(1234.56, {
  style: 'currency',
  currency: 'USD',
  currencyDisplay: 'code'
}));
// Sortie : "USD 1,234.56"
// Format comptable (parenthèses pour les négatifs)
console.log(gt.formatNum(-1234.56, {
  style: 'currency',
  currency: 'USD',
  currencySign: 'accounting'
}));
// Sortie : "($1,234.56)"Pourcentages et notation scientifique
// Pourcentage de base
console.log(gt.formatNum(0.1234, { style: 'percent' }));
// Résultat : "12%"
// Pourcentage avec décimales
console.log(gt.formatNum(0.1234, {
  style: 'percent',
  minimumFractionDigits: 1,
  maximumFractionDigits: 2
}));
// Résultat : "12.34%"
// Notation compacte
console.log(gt.formatNum(1234567, { notation: 'compact' }));
// Résultat : "1.2M"
// Notation scientifique
console.log(gt.formatNum(1234567, { notation: 'scientific' }));
// Résultat : "1.235E6"Notes
- Le formatage des nombres suit automatiquement les conventions propres à la locale
- La méthode utilise l’API Intl.NumberFormatnative du navigateur pour des performances et une précision optimales
- Le formatage des monnaies nécessite à la fois style: 'currency'et un codecurrencyvalide
- Le formatage des unités nécessite à la fois style: 'unit'et un identifiantunitvalide
Prochaines étapes
- Consultez la documentation Intl.NumberFormatpour davantage d’options
- Consultez format-currencypour un formatage spécialisé des devises
- Consultez format-messagepour le formatage des messages avec interpolation de nombres
- Consultez la fonction autonome format-numpour une utilisation sans instance GT
- Consultez get-locale-propertiespour des informations de formatage propres à la locale
Que pensez-vous de ce guide ?

