明凯博客

关注网站技术,一个特立独行的程序员

Js千分位格式化金额数字的方法

例如:

12345格式化为12,345.00
12345.6格式化为12,345.60
12345.67格式化为 12,345.67

只留两位小数。

代码如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
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;   
}

调用:fmoney(“12345.675910”, 3),返回12,345.676

还原金额,去除逗号:

1
2
3
4
function rmoney(s)   
{   
   return parseFloat(s.replace(/[^\d\.-]/g, ""));   
}

调用:rfmoney(“12,345.676”),返回12345.675

, , , ,

相关文章

发表评论

电子邮件地址不会被公开。 必填项已用*标注