js为数字添加千位分隔符
1.字符串处理比较复杂
function test(str){
var iNum = str.length % 3;
var prev = '';
var iNow = 0;
var temp = '';
var arr = [];
if (iNum != 0){
prev = str.substring(0, iNum);
arr.push(prev);
}
str = str.substring(iNum);
for (var i = 0; i < str.length; i++){
iNow++;
temp += str[i];
if (iNow == 3 && temp){
arr.push(temp);
temp = '';
iNow = 0;
}
}
return arr.join(',');
}
str = '98156464343436465';
test(str);
2.用正则实现
function test(str){
var re = /(?=(?!\b)(\d{3})+$)/g;
return str.replace(re, ',');
}
str = '98156464436465';
test(str);