zoukankan      html  css  js  c++  java
  • JS四舍五入BUG解决

    之前一直在用这个js自带的toFixed函数来进行四舍五入的操作,可是,在实际使用过程中却遇到了问题。

    比如

    1. var money=0.00542;//0.006;   
    2. alert(Number(money).toFixed(2));   
    3. //0.00  

    可以看出上面的结果是错误的,下面的方法通过巧妙的使用Math.round函数,完全可以解决数值很小时的精度问题。

    var money=0.00542;//0.006;   

    alert(Number(money).toFixed(2));   

      

    function round2(number,fractionDigits){   

        with(Math){   

           return round(number*pow(10,fractionDigits))/pow(10,fractionDigits);   

       }   

    }   

    alert(round2(money,2));//0.01 

    round 方法
    返回与给出的数值表达式最接近的整数。

    Math.round(number)

    必选项 number 参数是要舍入到最接近整数的值。

    说明
    如果 number 的小数部分大于等于 0.5,返回值是大于 number 的最小整数。否则,round 返回小于等于 number 的最大整数。

  • 相关阅读:
    3.7日复习
    作业
    小米官网需要的数据
    EL&JSTL
    变量和运算符
    jsp
    session的应用----验证码
    restframework-总结
    Django-Rest-Framework部分源码流程分析
    Django-Rest-Framework
  • 原文地址:https://www.cnblogs.com/cxy521/p/1928989.html
Copyright © 2011-2022 走看看