https://www.vevb.com/article/154898.htm
Ci-dessous, nous présenterons la méthode d'implémentation de JavaScript pour conserver deux méthodes de mise en œuvre décimales:
arrondi
Les résultats de traitement suivants seront à quatre passages:
var num = 2,446242342;
Pas d'entrée à quatre voies
Les résultats du traitement suivant ne se rendront pas quatre maisons:
Le premier, apporte d'abord l'entier décimal de bord:
Math.Floor (15.7784514000 * 100) / 100 // Le résultat de sortie est de 15,77
Le deuxième type est utilisé comme une chaîne, en utilisant une correspondance régulière:
Numéro (15.7784514000.TSTRING (). Match (/ ^ / d + (?: /
Remarque: s'il est négatif, veuillez le convertir en un nombre positif avant de calculer, et enfin revenir en nombres négatifs
JavaScript conserve l'exemple de deux chiffres décimaux:
<Script Type = "Text / JavaScript"> // réserve deux nombres décimaux // Fonction: Mettez le point flottant entre quatre maisons et cinq, et après avoir pris le point décimal, la fonction à deux bit TODECIMAL (x) {var f = PARSEFLOAT (X); Après 2, la fonction 2 2.00 TODECIMAL2 (x) {var f = parsefloat (x); toString (); var rs = s.indexof ('.'); + = '0';} return s;} fonction fomatfloat (src, pos) {return math.round (src * math.pow (10, pos)) / math.pow (10, pos);} // quatre hinds et wutong ("Keep 2 décimales décimales: + todécimal (+ todécimal (3.14159267); alert (" Mandarin réservé 2 chiffres décimaux: "+ TODECIMAL2 (3.14159267)); alerte (" Réserver 2 décimal: + todécimal (3.14559267)); Alett ("Obligatoire 2 chiffres:" + TODECIMAL 2 (2 (3.15159267)); alert ("Réserve 2 Nombres décimaux: + Fomatfloat (3.14559267, 2)); alert (" Réserve 1 chiffres: + fomatfloat (3.15159267, 1)); // décimal à deux bits: "+ 1000.003.Tofixed (2)); alert (" Réserver 1 chiffres: + 1000.08.tofixed (1)); Alerte ("Réserve 1 chiffre décimal:" + 1000.05.Tofixé (1)); )) ;; 3.1465 )); Lirt (précisément au 3ème point décimal "+ 3.1465 TopRecision (2));Utilisez JavaScript pour prendre le point décimal flottant après deux points.
1. Jeter la partie décimale et garder la partie entière
Parseint (5/2)
2. Prenez vers le haut et ajoutez une décimale à la partie entière pour ajouter 1
Math.Ceil (5/2)
3, quatre maisons et cinq entrent.
Math.round (5/2)
4, baisser
Math.floor (5/2)
Méthode alternative
1. La manière la plus stupide
Copier le code du code comme suit:
Fonction get ()
{{
var s = 22.127456 + "" ";
var str = S.SubString (0, S.Indexof (".") + 3);
alerte (str);
}
2. Bonne expression d'expressions régulières
Copier le code du code comme suit:
<script type = "text / javascript">
onload = function () {
var a = "23.456322";
Var à nouveau;
var re = / (# + 9 /.9> 2}) **) - 2:
Anew = a.replace (re, "1 $");
Alerte (à nouveau);
}
</cript>
3. Il est plus intelligent ...
Copier le code du code comme suit:
<cript>
var num = 22.127456;
alerte (math.round (num * 100) / 100);
</cript>
4. Des amis qui utiliseront de nouvelles choses ... mais vous avez besoin de IE5.5 + pour le soutenir.
5. JS conserve 2 décimales (obligatoires)
Pour les points décimaux supérieurs à 2 bits, la fonction ci-dessus est bien, mais si elle est inférieure à 2 bits, telle que: ChangetwodeCIMAL (3.1), il renverra 3.1. :
Copier le code du code comme suit:
Fonction changetwodecimal_f (x) {
var f_x = parsefloat (x);
if (isnan (f_x)) {
Alert ('function: changetwodecimal-> Paramètre E erreur');
Retourne false;
}
var f_x = math.round (x * 100) / 100;
var s_x = f_x.toString ();
var pos_decimal = s_x.indexof ('.');
if (pos_decimal <0) {
pos_decimal = s_x.length;
S_x + = '.';
}
While (s_x.length <= pos_decimal + 2) {{
s_x + = '0';
}
Retour s_x;
}
Fonction: Mettez le point flottant et allez quatre maisons et cinq, prenez 2 chiffres après le point décimal.
Cette fonction renvoie l'utilisation du format de la chaîne: changetwodecimal (3.1415926) Retour 3.14 ChangetwodeCIMAL (3.1) Retour 3.10 3.10