Localize numbers using Internalisation API

This commit is contained in:
thecashewtrader 2022-10-22 21:24:44 +05:30
parent 5a7f7c1f8d
commit 5a0076779a

View file

@ -88,20 +88,8 @@ const mixin = {
return str; return str;
}, },
numberFormat(num) { numberFormat(num) {
const digits = 2; const formatter = Intl.NumberFormat(undefined, { notation: "compact" });
const si = [ return formatter.format(num);
{ value: 1, symbol: "" },
{ value: 1e3, symbol: "k" },
{ value: 1e6, symbol: "M" },
{ value: 1e9, symbol: "B" },
];
const rx = /\.0+$|(\.[0-9]*[1-9])0+$/;
for (var i = si.length - 1; i > 0; i--) {
if (num >= si[i].value) {
break;
}
}
return (num / si[i].value).toFixed(digits).replace(rx, "$1") + si[i].symbol;
}, },
addCommas(num) { addCommas(num) {
num = parseInt(num); num = parseInt(num);