描述
请补全JavaScript代码,要求返回参数数字的千分位分隔符字符串。
_comma(12300)
‘12,300’
代码
方法一
function _comma(number) {
//负数处理
let flag = '';
if(number < 0) flag = '-'
number = Math.abs(number);
let numStr = number.toString();
let count = 1;
for (var i = numStr.length - 1; i > 0; i--) {
if (count == 3) {
//字符串连接
numStr = numStr.slice(0, i) + ',' + numStr.slice(i)
count = 0;
}
count++;
}
return flag+numStr;
}
console.log(_comma(1234567));
}
方法二
function _comma(number) {
let str = number.toString();
return str.replace(/(\d)(?=(?:\d{3})+$)/g, '$1,');
}
方法三
function _comma(number) {
// 递归
if (number < 1000) {
return number.toString();
} else {
return _comma(Math.floor(number / 1000)) + "," + _comma(number % 1000);
}
}