// 参数:str,需要格式化的金额数值.
// 参数:flag,判断格式化后的金额是否需要小数位.
// 返回:返回格式化后的数值字符串.
function formatMoney (str, flag=true) {
if (/[^0-9\.]/.test(str))
return "0.00";
if (str == null || str == "null" || str == "")
return "0.00";
str = str.toString().replace(/^(\d*)$/, "$1.");
str = (str + "00").replace(/(\d*\.\d\d)\d*/, "$1");
str = str.replace(".", ",");
var re = /(\d)(\d{3},)/;
while (re.test(str))
str = str.replace(re, "$1,$2");
str = str.replace(/,(\d\d)$/, ".$1");
if (!flag) {
var a = str.split(".");
if (a[1] == "00") {
str = a[0];
}
}
return str;
},
网友评论