num-beauty
Version:
An ultra lightweight module for formatting numbers into human-friendly strings
1 lines • 426 B
JavaScript
import{locales}from"../locales/index.js";import{formatNumber}from"./formatting.service.js";export function abbreviateNumber(t,r,e){if(0===t||0n===t)return r;const o="bigint"==typeof t?Number(t):t,n=Math.abs(o),a=locales[e].units,i=Math.floor(Math.log10(n)/3);if(i<a.length){const t=a[i][1===n?0:1];if(0===i)return r;const f=o/Math.pow(10,3*i),m=formatNumber(f,2,e,!0);return"en-US"===e?t?`${m}${t}`:m:t?`${m} ${t}`:m}return r}