function formatNum(num) //将数字转换成三位逗号分隔的样式 { if(!/^(\+|-)?(\d+)(\.\d+)?$/.test(num)){alert("wrong!"); return num;} var a = RegExp.$1, b = RegExp.$2, c = RegExp.$3; var re = new RegExp().compile("(\\d)(\\d{3})(,|$)"); while(re.test(b)) b = b.replace(re, "$1,$2$3"); return a +""+ b +""+ c; } alert(formatNum(-12345678.123)); alert(formatNum("12345678.123")); alert(formatNum("10000000000000000000000000000000000000000"));
function addCommaToNumber(numberStr) { var str=numberStr; var subs=new Array() var newStr="" for(var i=str.length,j=0;i>0;i-=3,j++) subs[j]=str.substring(i,i-3) subs.reverse() for(var i=0;i<subs.length;i++) newStr+=(i==subs.length-1)?subs[i]:subs[i]+"," return newStr }
<!--
num="38937031270342073"
num=num.replace(/(\d\d\d)/g,function($0,$1){return $1+","})
alert(num)
//-->
</SCRIPT>
{
if(!/^(\+|-)?(\d+)(\.\d+)?$/.test(num)){alert("wrong!"); return num;}
var a = RegExp.$1, b = RegExp.$2, c = RegExp.$3;
var re = new RegExp().compile("(\\d)(\\d{3})(,|$)");
while(re.test(b)) b = b.replace(re, "$1,$2$3");
return a +""+ b +""+ c;
}
alert(formatNum(-12345678.123));
alert(formatNum("12345678.123"));
alert(formatNum("10000000000000000000000000000000000000000"));
{
var str=numberStr;
var subs=new Array()
var newStr=""
for(var i=str.length,j=0;i>0;i-=3,j++)
subs[j]=str.substring(i,i-3)
subs.reverse()
for(var i=0;i<subs.length;i++)
newStr+=(i==subs.length-1)?subs[i]:subs[i]+","
return newStr
}