Comment mettre en forme un nombre en tant que valeur monétaire en JavaScript

Apprenez à convertir un nombre en valeur monétaire à l'aide de l'API d'internationalisation JavaScript

Disons que tu as un numéro comme10, et cela représente le prix de quelque chose.

Vous voulez le transformer en$10,00.

Si le numéro comporte plus de 3 chiffres, il doit être affiché différemment, par exemple1000doit être affiché comme$1,000.00

C'est en USD, cependant.

Différents pays ont des conventions différentes pour afficher les valeurs.

JavaScript nous facilite la tâche avec leAPI d'internationalisation ECMAScript, une API de navigateur relativement récente qui fournit de nombreuses fonctionnalités d'internationalisation, telles que le formatage des dates et de l'heure.

Il est très bien pris en charge:

Browser support for the internationalization API

const formatter = new Intl.NumberFormat('en-US', {
  style: 'currency',
  currency: 'USD',
  minimumFractionDigits: 2
})

formatter.format(1000) // “$1,000.00” formatter.format(10) // “$10.00” formatter.format(123233000) // “$123,233,000.00”

LeminimumFractionDigitsLa propriété définit la partie de fraction pour qu'elle comporte toujours au moins 2 chiffres. Vous pouvez vérifier les autres paramètres que vous pouvez utiliser dansla page NumberFormat MDN.

Cet exemple crée un formateur de nombres pour la devise Euro, pour le pays italien:

const formatter = new Intl.NumberFormat('it-IT', {
  style: 'currency',
  currency: 'EUR'
})

Téléchargez mon gratuitManuel du débutant JavaScript


Plus de tutoriels js: