1、转成千分位-保留两位小数-兼容负数版 export function thousands (n) { const num = NToFixed(n, 2) // 匹配前面是1到3个的数字后面跟着3个数字的 const re = /\d{1,3}(?=(\d{3})+$)/g return `${num}`.replace(/^(\-?)(\d+)((\.\d+)?)$/, function (s, s1, s2, s3) { return s1 + s2.replace(re, '$&,') + s3 }) } 1、转成千分位-保留两位小数-兼容负数版-精简 function thousands (num) { return (+num || 0).toString().replace(/^-?\d+/g, m => m.replace(/(?=(?!\b)(\d{3})+$)/g, ',')) } 注释: NToFixed()是代替原生JS的toFixed的方法(其存在精准问题,详细内容看下方链接) 点击这里(了解NToFixed方法) 2、去除千分位 delcommafy(num){//去除千分位中的‘,’ if(num&&num!='undefined'&&num!='null'){ let numS = num; numS = numS.toString(); numS = numS.replace(/,/gi, ''); return numS; }else { return num; } },