zoukankan      html  css  js  c++  java
  • JS数据格式化保留两位小数的多种实现方法总结

    JS数据格式化是在进行web前端开发时常碰到的事情,特别是在数据类型为Float的数据就需要特殊处理,如保留两位小数、小数点后的数据是否需要四舍五入等等。下面就来介绍实现数据格式化保留两位小数的多种方法。

    1、JS自带的方法toFixed(),toFixed() 方法可把 Number 四舍五入为指定小数位数的数字。

    语法:NumberObject.toFixed(num),mun是必需的参数,即规定小数的位数,是 0 ~ 20 之间的值,包括 0 和 20,有些实现可以支持更大的数值范围。如果省略了该参数,将用 0 代替,所以toFixed() 方法可以实现保留2位、3位、4位等等,取决于num的数值。

    返回值:返回 NumberObject 的字符串表示,不采用指数计数法,小数点后有固定的 num 位数字。如果必要,该数字会被舍入,也可以用 0 补足,以便它达到指定的长度。如果 num 大于 le+21,则该方法只调用 NumberObject.toString(),返回采用指数计数法表示的字符串。

    当 num 太小或太大时抛出异常 RangeError。0 ~ 20 之间的值不会引发该异常。有些实现支持更大范围或更小范围内的值。

    当调用该方法的对象不是 Number 时抛出 TypeError 异常。

    例子:

    <script type=”text/javascript”>
    var num = new Number(13.376954);
    document.write (num.toFixed(2))
    </script>
    输出:13.38

    2、自定义函数实现小数保留并四舍五入。

    function   roundFun(numberRound,roundDigit)  {    //四舍五入,保留位数为roundDigit
    if   (numberRound>=0){
    var   tempNumber   =   parseInt((numberRound   *   Math.pow(10,roundDigit)+0.5))/Math.pow(10,roundDigit);
    return   tempNumber;
    } else{
    numberRound1=-numberRound;
    var   tempNumber   =   parseInt((numberRound1   *   Math.pow(10,roundDigit)+0.5))/Math.pow(10,roundDigit);
    return   -tempNumber;
    }
    }

    然后调用roundFun()这个函数就可以了。如roundFun(’13.376954′,2);当然返回的结果跟第一种方法是一样的。

    3、通过函数截取,截取到小数点后面第几位,当然这种方法就没有四舍五入了。

    <script type=”text/javascript”>
    tmp   =   “13.376954″
    result   =   tmp.substr(0,tmp.indexOf(“.”)+2);
    alert(result);
    </script>

    孜孜不倦,必能求索;风尘仆仆,终有归途。
  • 相关阅读:
    自动同步日期dos命令 | DOS命令自动同步时间
    Mysql字符串截取,去掉时间,匹配日期等于今日
    HTML指定页面编码
    Mysql连接字符,字段函数concat()
    功能强大的截图工具snipaste
    当页面提交时,执行相关JS函数检查输入是否合法
    DOM和BOM
    JS内建對象(Math,Number,String,Date)
    JS数组基础01(数组的创建,push,pop,unshift,shift,concat,join,splice,slice,sort.reverse,indexOf,三种排序)
    总结01(对象引用的赋值与对象的复制,函数作为对象及回调递归,区分数组与对象)
  • 原文地址:https://www.cnblogs.com/liyuspace/p/9262173.html
Copyright © 2011-2022 走看看