Arrondir un nombre à 2 décimales en JavaScript

Harshit Jindal 12 octobre 2023
  1. Utilisez la méthode .toFixed() pour arrondir un nombre à 2 décimales en JavaScript
  2. Utilisez la fonction Math.round() pour arrondir un nombre à 2 décimales en JavaScript
  3. Utiliser le double arrondi pour arrondir un nombre à 2 décimales dans JavaScript
  4. Utilisation de la fonction personnalisée pour arrondir un nombre à 2 décimales dans JavaScript
Arrondir un nombre à 2 décimales en JavaScript

Ce didacticiel explique comment arrondir un nombre à 2 décimales dans JavaScript.

Utilisez la méthode .toFixed() pour arrondir un nombre à 2 décimales en JavaScript

Nous appliquons la méthode .toFixed() sur le nombre et passons le nombre de chiffres après la décimale comme argument.

var numb = 12312214.124124124;
numb = numb.toFixed(2);

Cette méthode ne donne pas de résultats précis dans certains cas, et il existe de meilleures méthodes que celle-ci. Si un nombre est arrondi à 1.2, alors il affichera 1.20. Si un nombre comme 2.005 est donné, il renverra 2.000 au lieu de 2.01.

Utilisez la fonction Math.round() pour arrondir un nombre à 2 décimales en JavaScript

Nous prenons le nombre et ajoutons un tout petit nombre, Number.EPSILON, pour garantir un arrondi précis du nombre. On multiplie ensuite par nombre par 100 avant d’arrondir pour extraire uniquement les deux chiffres après la décimale. Enfin, nous divisons le nombre par 100 pour obtenir un maximum de 2 décimales.

var numb = 212421434.533423131231;
var rounded = Math.round((numb + Number.EPSILON) * 100) / 100;
console.log(rounded);

Production:

212421434.53

Bien que cette méthode s’améliore par rapport à .toFixed(), ce n’est toujours pas la meilleure solution et n’arrondira pas non plus correctement 1.005.

Utiliser le double arrondi pour arrondir un nombre à 2 décimales dans JavaScript

Dans cette méthode, nous utilisons la méthode .toPrecision() pour éliminer les erreurs d’arrondi en virgule flottante introduites lors des calculs intermédiaires en arrondi simple.

function round(num) {
  var m = Number((Math.abs(num) * 100).toPrecision(15));
  return Math.round(m) / 100 * Math.sign(num);
}

console.log(round(1.005));

Production:

1.01

Utilisation de la fonction personnalisée pour arrondir un nombre à 2 décimales dans JavaScript

function roundToTwo(num) {
  return +(Math.round(num + 'e+2') + 'e-2');
}
console.log(roundToTwo(2.005));

Cette fonction personnalisée prend en charge tous les cas d’angle, et l’arrondi des décimales comme 1.005 est bien géré par cette fonction.

Harshit Jindal avatar Harshit Jindal avatar

Harshit Jindal has done his Bachelors in Computer Science Engineering(2021) from DTU. He has always been a problem solver and now turned that into his profession. Currently working at M365 Cloud Security team(Torus) on Cloud Security Services and Datacenter Buildout Automation.

LinkedIn

Article connexe - JavaScript Number