js金额格式化
// 将数字转换成金额显示
function toMoney(val) {
var str = (val/100*100).toFixed(2) + ''; //从别的地方抄的代码没有*100,结果金额小数点左移了两位,导致10000变100唉
var intSum = str.substring(0,str.indexOf(".")).replace( /\B(?=(?:\d{3})+$)/g, ',' );//取到整数部分
var dot = str.substring(str.length,str.indexOf("."))//取到小数部分搜索
var ret = intSum + dot;
return ret;
}
====其他方法
最开始使用了
function toMoney(num) {
num = num.toFixed(2);
num = parseFloat(num);
num = num.toLocaleString();
return num;// 返回的是字符串23,245.12保留2位小数,但是无法补全第一位0,会显示.00。
}
第二次改成
function toMoney(num) {
num = parseFloat(num);
num = num.toFixed(2);
num = num.toLocaleString();
return num;// 返回的是字符串23245.12保留2位小数,可以补全第一位0,会显示0.00,但是千分位符不显示了。
}