1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
export const numberFormatter = (number, digits) => {
const lookup = [
{ value: 1, symbol: "" },
{ value: 1e3, symbol: "k" },
{ value: 1e6, symbol: "M" },
{ value: 1e9, symbol: "G" },
{ value: 1e12, symbol: "T" },
{ value: 1e15, symbol: "P" },
{ value: 1e18, symbol: "E" }
];
const regexp = /\.0+$|(?<=\.[0-9]*[1-9])0+$/;
const item = lookup.findLast(item => number >= item.value);
if (!item) {
return "0";
}
let formattedNumber = (number / item.value).toFixed(digits).replace(regexp, "").replace(".", ",");
return formattedNumber + item.symbol;
}
|