function precision(num){
let arr =num.toString().split('.')
let int = arr[0],decimal=arr[1]
let handleInt =(num)=>{
return num.split('').reverse().reduceRight((pre,cur,i)=>{
return pre+(i%3?cur:`${cur},`)
},'').replace(/^,|,$/g,'')
}
let handleDemi =(num)=>{
return num.split('').reverse().reduce((pre,cur,i)=>{
return pre+((i+1)%3?cur:`${cur},`)
},'.').replace(/^,|,$/g,'')
}
return arr.length>1?handleInt(int)+handleDemi(decimal):handleInt(int)
}
正则
const reg = /\B(?=(\d{3})+(?!\d))/g
value => value.replace(reg, ',')