var str = '92089183928193892139'
function main(num){
var arr = [];
function operate(n){
if(n.length > 3){
arr[arr.length] = n.slice(-3);
return operate(n.slice(0,-3));
}else{
arr[arr.length] = n;
return arr.reverse().join(',');
}
};
return operate(num)
}
console.log(main(str));
思路:添加千位分隔符是从后到前,每3位添加逗号,所以这里输入数据转换成字符串后,利用slice方法的输入负数参数从后取的特点,从后取三位数字保存在数组中,并把取剩后的数据递归重复取值,直到数据不足3位,把剩下一起存入数组中