Maison >interface Web >js tutoriel >Comment arrondir avec précision des nombres à une décimale en JavaScript ?

Comment arrondir avec précision des nombres à une décimale en JavaScript ?

Barbara Streisand
Barbara Streisandoriginal
2024-11-19 01:02:03717parcourir

How to Accurately Round Numbers to One Decimal Place in JavaScript?

Arrondir à une décimale en JavaScript

Arrondir les nombres en JavaScript peut être délicat, mais c'est crucial pour de nombreuses applications. Une tâche courante consiste à arrondir un nombre à une décimale.

La méthode *10, Round, /10

Une approche courante consiste à multiplier le nombre par 10. , arrondissez-le, puis divisez par 10. Cependant, cette méthode laisse deux décimales à la fin du entier.

L'approche correcte

Pour arrondir correctement à une décimale, utilisez la formule suivante :

Math.round(num * 10) / 10

Exemple

var number = 12.3456789;
var rounded = Math.round(number * 10) / 10;
// rounded is 12.3

Ajout d'une fin Zéros

Si vous avez besoin que le nombre arrondi ait toujours une décimale, même s'il s'agit d'un zéro, utilisez ce qui suit :

var fixed = rounded.toFixed(1);
// 'fixed' is always to one decimal point

Fonction d'arrondi personnalisée

Pour plus de flexibilité, vous pouvez créer une fonction d'arrondi personnalisée qui prend la précision comme critère. argument :

function round(value, precision) {
    var multiplier = Math.pow(10, precision || 0);
    return Math.round(value * multiplier) / multiplier;
}

Cette fonction vous permet d'arrondir à n'importe quelle précision, y compris l'arrondi au nombre entier le plus proche (précision 0).

Remarques supplémentaires :

  • La méthode .toFixed() renvoie une chaîne, vous devrez donc utiliser parseFloat() pour la reconvertir en nombre si nécessaire.
  • Pour éviter que les zéros à droite ne soient perdus dans les calculs, effectuez l'arrondi comme dernière étape avant de sortir le nombre.
  • Les nombres négatifs sont traités correctement par cette méthode.

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!

Déclaration:
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