方式1(首选)
function format_money(num){
return parseFloat(num).toLocaleString();
}
方式2
function format_money2(num, type){
var integer,
xiaoshu,
length,
yushu;
num = type==1 ? parseInt(num).toString() : parseFloat(num).toString();
if(num.indexOf(".")>-1){
integer = num.substr(0, num.indexOf("."));
xiaoshu = num.substr(num.indexOf("."));
} else {
integer = num;
xiaoshu = "";
}
length = integer.length;
if(length < 3) return integer + xiaoshu;
yushu = length % 3;
integer = yushu>0 ? integer.slice(0, yushu) +","+ integer.slice(yushu, length).match(/\d{3}/g).join(',') : integer.slice(yushu, length).match(/\d{3}/g).join(',');
return integer + xiaoshu;
}
方式3 正则格式化货币
function formatMoney(m){
return String(m).replace(/\B(?=(\d{3})+(?!\d))/g, ',');
}
console.log(formatMoney(1234566709));
ps:只是在实际工作中遇到的,具体情况具体处理。