首页 > 代码库 > 格式化金额数与自动四舍五入

格式化金额数与自动四舍五入

下面是一个格式化函数,可以控制小数位数,自动四舍五入。例如: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 = http://www.mamicode.com/fmoney(txt.value, num);   "num").value);         span.innerHTML = "=" + fmoney(rmoney(txt.value) + rmoney(txt2.value), num);      }      ;   }   ;   </script>

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

格式化金额数与自动四舍五入