function formatCurrency(num) { var sign=""; if(isNaN(num)) { num = 0; } if(num<0) { sign="-"; } var strNum=num+""; var arr1 = strNum.split("."); var hasPoint=false;//是否有小數(shù)部分 var piontPart="";//小數(shù)部分 var intPart=strNum;//整數(shù)部分 if(arr1.length>=2) { hasPoint=true; piontPart= arr1[1]; intPart=arr1[0]; }
var res='';//保存添加逗號的部分 var intPartlength=intPart.length;//整數(shù)部分長度 var maxcount=Math.ceil(intPartlength/3);//整數(shù)部分需要添加幾個逗號 for (var i = 1; i <=maxcount;i++)//每三位添加一個逗號 { var startIndex=intPartlength-i*3;//開始位置 if(startIndex<0)//開始位置小于0時修正為0 { startIndex=0; } var endIndex=intPartlength-i*3+3;//結(jié)束位置 var part=intPart.substring(startIndex,endIndex)+","; res=part+res; } res=res.substr(0,res.length-1);//去掉最后一個逗號 if(hasPoint) { return "¥"+sign+res+"."+piontPart; } else { return "¥"+sign+res; }