逢千位加入逗号分割, 正则如何给数字加标点? 如有数字 1000 ,888000等,正则怎么把它转换成 1,000,888,000 这样显示的货币格式? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 .replace(/([0-9])(?=([0-9]{3})+$)/g,'$1,'); <script type="text/javascript">// 方法1:var num = 1000;// 不过最后有两位小数alert(num.toLocaleString()) // 1,000.00// 方法2:function formatNumber(str) { if(str.length <= 3){ return str; } else { return formatNumber(str.substring(0,str.length-3))+','+str.substring(str.length-3); } } alert(formatNumber(num + '')); // 1,000</script> .. 貌似有点问题,如果遇到小数点方法1可以,方法2就不行了,1楼的也一样,如var num = 19980.23; .replace(/\d+?(?=(?:\d{3})+$)/img, "$&,");试试吧; .replace(/([0-9])(?=([0-9]{3})+\.|$)/g,'$1,') 上面的方法修改了下function formatNumber(str) { var baseLen = 3; if(str.indexOf('.') > -1) { baseLen += str.length - str.indexOf('.'); } if(str.length <= baseLen){ return str; } else { return formatNumber(str.substring(0,str.length-baseLen))+','+str.substring(str.length-baseLen); } }alert(formatNumber('0')); // 11alert(formatNumber('11')); // 11alert(formatNumber('100')); // 100alert(formatNumber('0.00001')); // 0.00001alert(formatNumber('1000')); // 1,000alert(formatNumber('123456789')); // 123,456,789alert(formatNumber('123456789.00')); // 123,456,789.00 javascript菜单默认第一项为展开 困惑 Ext.ux.FusionPanel js 改变td 背景颜色 当鼠标移走时如何恢复 关于给HiddenField传值 关于javascript实现网页背景打印的问题 怎样取得当前窗口的leftmargin? 谁会写这个javascript函数? 为什么parseInt的结果是这样啊? JQuery表格隔行换色的问题 如何使用javascript下载文件到指定目录 带箭头的图片自动切换特效 js 时间格式调试方面的错误,求分析解答
// 方法1:
var num = 1000;
// 不过最后有两位小数
alert(num.toLocaleString()) // 1,000.00// 方法2:
function formatNumber(str) {
if(str.length <= 3){
return str;
} else {
return formatNumber(str.substring(0,str.length-3))+','+str.substring(str.length-3);
}
} alert(formatNumber(num + '')); // 1,000
</script>
试试吧;
function formatNumber(str) {
var baseLen = 3;
if(str.indexOf('.') > -1) {
baseLen += str.length - str.indexOf('.');
}
if(str.length <= baseLen){
return str;
} else {
return formatNumber(str.substring(0,str.length-baseLen))+','+str.substring(str.length-baseLen);
}
}
alert(formatNumber('0')); // 11
alert(formatNumber('11')); // 11
alert(formatNumber('100')); // 100
alert(formatNumber('0.00001')); // 0.00001
alert(formatNumber('1000')); // 1,000
alert(formatNumber('123456789')); // 123,456,789
alert(formatNumber('123456789.00')); // 123,456,789.00