復制代碼 代碼如下:
function formatCurrency(num) {
var sign="";
if(isNaN(num))
{
num = 0;
}
if(num<0)
{
sign="-";
}
var strNum=num+"";
var arr1 = strNum.split(".");
var hasPoint=false;//是否有小數部分
var piontPart="";//小數部分
var intPart=strNum;//整數部分
if(arr1.length>=2)
{
hasPoint=true;
piontPart= arr1[1];
intPart=arr1[0];
}
var res='';//保存添加逗號的部分
var intPartlength=intPart.length;//整數部分長度
var maxcount=Math.ceil(intPartlength/3);//整數部分需要添加幾個逗號
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;//結束位置
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;
}
}