zoukankan      html  css  js  c++  java
  • 格式化金额数与自动四舍五入

    下面是一个格式化函数,可以控制小数位数,自动四舍五入。例如:12345格式化为12,345.00,12345.6格式化为12,345.60,12345.67格式化为 12,345.67,只留两位小数。

    效果演示

    小数点位数:   +  
     

    下面为程序代码:

    <script type="text/javascript">   
    function fmoney(s, n)   
    {   
       n = n > 0 && n <= 20 ? n : 2;   
       s = parseFloat((s + "").replace(/[^d.-]/g, "")).toFixed(n) + "";   
       var l = s.split(".")[0].split("").reverse(),   
       r = s.split(".")[1];   
       t = "";   
       for(i = 0; i < l.length; i ++ )   
       {   
          t += l[i] + ((i + 1) % 3 == 0 && (i + 1) != l.length ? "," : "");   
       }   
       return t.split("").reverse().join("") + "." + r;   
    }   
    function rmoney(s)   
    {   
       return parseFloat(s.replace(/[^d.-]/g, ""));   
    }   
    function g(id)   
    {   
       return document.getElementById(id);   
    }   
    window.onload = function()   
    {   
       var num,   
       txt = g("txt"),   
       txt2 = g("txt2"),   
       btn = g("btn"),   
       btn2 = g("btn2"),   
       span = g("span");   
       btn.onclick = function()   
       {   
          num = parseInt(g("num").value);   
          txt.value = fmoney(txt.value, num);   
          txt2.value = fmoney(txt2.value, num);   
       }   
       ;   
       btn2.onclick = function()   
       {   
          num = parseInt(g("num").value);   
          span.innerHTML = "=" + fmoney(rmoney(txt.value) + rmoney(txt2.value), num);   
       }   
       ;   
    }   
    ;   
    </script>
    

    调用fmoney("12345.675910", 3),返回12,345.676。

  • 相关阅读:
    Mybatis中#{}和${}传参的区别
    笔记摘抄 —— shiro学习篇
    使用Spring的Testcase的单元测试的写法
    【转】FreeMarker学习笔记
    破解Pycharm,IDEA,PhpStrom等系列产品的,有关JetbrainsCrack的使用方法
    Python的字符串
    python的变量
    python开头注释
    h5-动画小案例-滚动展示
    h5-钟表动画案例
  • 原文地址:https://www.cnblogs.com/xiaoyang002/p/4050977.html
Copyright © 2011-2022 走看看