//格式化货币
function outputMoney(number) {
number = number.replace(/\,/g,"");
var maxNum = 999999999999999.9999; //最大处理的数字
if(isNaN(number)){
return number;
}
if (number==""){
return "";
}
if (number >= maxNum) {
alert('超出最大处理数字');
return "";
}
if(number < 0){
return '-'+outputDollars(Math.floor(Math.abs(number)-0) + '') + outputCents(Math.abs(number) - 0);
}
else{
return outputDollars(Math.floor(number-0) + '') + outputCents(number - 0);
}
}
function outputDollars(number) {
if (number.length <= 3){
return (number == '' ? '0' : number);
}else{
var mod = number.length % 3;
var output = (mod == 0 ? '' : (number.substring(0,mod)));
for (var i=0 ; i< Math.floor(number.length/3) ; i++){
if ((mod ==0) && (i ==0)) {
output+= number.substring(mod+3*i,mod+3*i+3);
}
else {
output+= ',' + number.substring(mod+3*i,mod+3*i+3);
}
}
return (output);
}
}
function outputCents(amount) {
amount = Math.round(((amount) - Math.floor(amount)) * 100);
return (amount < 10 ? '.0' + amount : '.' + amount);
}
调用方法:
outputMoney(money);