您的位置:首页 > Web前端 > JavaScript

JS格式化数字金额用逗号隔开保留两位小数

2016-02-26 16:24 876 查看
JS格式化数字金额只留两位小数。写了个格式化函数。可以控制小数位数,自动四舍五入,感兴趣的朋友可以了解下

例如:

12345格式化为12,345.00

12345.6格式化为12,345.60

12345.67格式化为 12,345.67

只留两位小数。

回来后写了个格式化函数。可以控制小数位数,自动四舍五入。 代码如下:

代码如下:
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

在jsp页面上格式化金额:

<fmt:formatNumber value="${data}" type="currency" pattern=".00"/>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息