Méthodes d'arrondi js : 1. méthode tofixed, qui peut arrondir le nombre à un nombre avec des décimales spécifiées ; 2. méthode round(), qui peut arrondir un nombre à l'entier le plus proche.
1, méthode tofixed
La méthode toFixed() peut arrondir le nombre à un nombre avec des décimales spécifiées. Par exemple, si la donnée Num est conservée à 2 décimales, elle est exprimée comme suit : toFixed(Num) ; toutefois, les règles d'arrondi sont différentes de celles utilisées en mathématiques. Méthode d'arrondi du banquier , son essence est une méthode d'arrondi à cinq pour obtenir un résultat pair (également connu sous le nom d'arrondi à cinq et de départ pair). Les règles spécifiques sont les suivantes :
Pour faire simple : pensez à arrondir à cinq. Si le nombre après cinq n'est pas zéro, ajoutez un. Si le nombre après cinq est zéro, ce sera impair ou pair. avant que cinq soit pair, il doit être écarté. Si le nombre avant cinq est impair, il doit être arrondi à un.
Évidemment, cette règle n'est pas conforme à la manière dont nous traitons habituellement les données. Afin de résoudre ce problème, vous pouvez personnaliser l'implémentation à l'aide de la méthode Math.round pour spécifier le nombre de bits de données à conserver pour le traitement.
2, méthode round
La méthode round() peut arrondir un nombre à l'entier le plus proche. Par exemple : Math.round(x) prend x à l’entier le plus proche. La méthode d'arrondi est utilisée dans la méthode d'arrondi, qui est conforme aux règles d'arrondi en mathématiques. Le traitement des décimales n'est pas si pratique, mais un traitement personnalisé peut être effectué selon différentes exigences.
Par exemple : pour traiter X avec deux décimales, vous pouvez utiliser Math.round(X * 100) / 100 pour le traitement.
Autre contenu :
En JavaScript, les scénarios d'arrondi des valeurs sont les suivants :
Arrondi vers le haut : ceil Arrondi vers le bas : sol Arrondi : round Précision fixe : toFixed Longueur fixe : toPrecision Arrondi : parseInt, opération sur les bits
Cet article expliquera et résumera brièvement ces 6 API.
1. Arrondir : ceil
ceil signifie « plafond », ce qui signifie l'entier au-dessus d'une valeur et le plus proche du nombre. ceil est une méthode statique de l'objet Math et doit passer un paramètre. La méthode d'appel est la suivante :
Math.ceil(12.34); //13Math.ceil(12.68); down : floor
3. : round
toFixed est différente des trois méthodes ci-dessus. C'est une méthode implémentée sur le prototype Number. Sa fonction est d'arrondir un nombre à virgule flottante et de conserver des décimales fixes. toFixed doit passer un paramètre et sa méthode d'appel est la suivante :
100.456001.toFixed(2); // 100.46100.456001.toFixed(3); // 100.456
2. Arrondissez les valeurs de type virgule flottante, ignorez la partie décimale et n'arrondissez pas
// String value parseInt('100'); // 100parseInt('100axt'); ; Effectuez une opération OU au niveau du bit, la valeur d'origine reste inchangée ~~ : La valeur d'origine obtenue par deux opérations NON au niveau du bit est également la valeur d'origine>> 0 : Décalage vers la droite de 0 bits<< >> 0 : décalage à droite non signé de 0 bits
Ces opérateurs au niveau du bit présenteront certaines caractéristiques communes lors de l'implémentation des opérations d'arrondi :
Pour le type Number, les résultats obtenus en appliquant directement des opérations sur les bits sont presque les mêmes que parseInt ; pour d'autres types, il est converti en interne en une valeur numérique via Number() avant que les opérations sur les bits ne soient appliquées. Lorsque des opérations sur bits sont appliquées aux valeurs spéciales NaN et Infinity, les deux valeurs sont traitées comme 0.
Pour le type Nombre, les opérations sur les bits sont appliquées directement.
~~ 100,12;
Pour les autres types, utilisez d'abord Number() pour convertir en type numérique, puis effectuez des opérations sur les bits.
~~ '100.12' // 100, Nombre('100.12') == 100.12'100.50' << ; // 100, Nombre('100.96') == 100.96~~ 'abc' // 0, Nombre('abc') == NaN'12abc' >> ) == NaNundéfini | 0 ; // 0, Nombre(non défini) == NaN~~null; // 0 , Nombre(null) == 0vrai >> >> 0; //0 , Nombre (faux) == 0[] << ; 0; // 0
Les opérations au niveau du bit fonctionnent au niveau le plus élémentaire, c'est-à-dire qu'elles opèrent sur des valeurs basées sur les bits en mémoire qui représentent la valeur.
La raison pour laquelle les opérations sur bits peuvent être arrondies est la suivante :
Les nombres dans ECMAScript sont stockés sous forme de nombres à virgule flottante double précision 64 bits, mais les opérations sur bits ne peuvent être appliquées qu'à des entiers, donc les nombres à virgule flottante 64 bits doivent être converti en entiers de 32 bits, puis effectuez des opérations sur les bits et enfin convertissez les résultats du calcul en nombres à virgule flottante de 64 bits pour le stockage.
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!