Maison > interface Web > js tutoriel > Comment arrondir des nombres à deux décimales en JavaScript uniquement lorsque cela est nécessaire ?

Comment arrondir des nombres à deux décimales en JavaScript uniquement lorsque cela est nécessaire ?

DDD
Libérer: 2024-12-28 00:21:09
original
614 Les gens l'ont consulté

How to Round Numbers to Two Decimal Places in JavaScript Only When Necessary?

Arrondir les nombres à deux décimales : si nécessaire

Si vous souhaitez arrondir les nombres à deux décimales au maximum, mais seulement lorsque cela est nécessaire , voici deux méthodes efficaces en JavaScript :

1. Utilisation de Math.round() :

Math.round(num * 100) / 100
Copier après la connexion

Cette méthode multiplie le nombre par 100 pour déplacer la virgule décimale de deux places vers la droite, arrondit le résultat à l'aide de Math.round(), puis divise par 100 pour ramener la virgule décimale à sa position d'origine.

2. Utilisation de Number.EPSILON pour la précision :

Math.round((num + Number.EPSILON) * 100) / 100
Copier après la connexion

Cette méthode est plus précise, en particulier pour les nombres comme 1,005 qui peuvent être incorrectement arrondis par la méthode précédente en raison de problèmes de précision en virgule flottante. Il ajoute un petit nombre (Number.EPSILON) avant de multiplier et d'arrondir, garantissant ainsi qu'aucune erreur d'arrondi ne se produit.

Exemple d'utilisation :

const numbers = [10, 1.7777777, 9.1];
const roundedNumbers = numbers.map(num => {
  return num === Math.floor(num)
    ? num
    : Math.round(num * 100) / 100;
});

console.log(roundedNumbers); // Output: [10, 1.78, 9.1]
Copier après la connexion

Dans cet exemple, les nombres sont arrondis à deux décimales seulement s’ils comportent une partie fractionnaire. 10 reste inchangé car c'est déjà un nombre entier.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal