使用toLocaleString是个简单好方法,之前不知道自己写函数复杂啊复杂
console.log((-8888.8888888).toLocaleString('zh', { maximumFractionDigits: 3, useGrouping: false }));
console.log((-8888.8888888).toLocaleString();
let money=(3000).toLocaleString();
console.log(money)
更能toLocaleString用法参考
自己写的金额分割函数
function fmoney(s, n) { //s传入金额,n保留位数
n = n > 0 && n <= 20 ? n : 0;
s = parseFloat((s + "").replace(/[^\d\.-]/g, "")).toFixed(n) + "";
var l = s.split(".")[0].split("").reverse(), r = s.split(".")[1];
let t = "";
for (let i = 0; i < l.length; i++) {
t += l[i] + ((i + 1) % 3 == 0 && (i + 1) != l.length ? "," : "");
}
if(n==0){
return t.split("").reverse().join("");
}
else{
return t.split("").reverse().join("") + "." + r;
}
}