human-number
Advanced tools
Comparing version
@@ -5,3 +5,3 @@ { | ||
"homepage": "https://nicedoc.io/Kikobeats/human-number", | ||
"version": "1.0.11", | ||
"version": "2.0.0", | ||
"main": "src/index.js", | ||
@@ -8,0 +8,0 @@ "author": { |
@@ -7,3 +7,3 @@ # human-number | ||
> Convert number to a human readable string: `13500` → `13.5K`. | ||
> Convert number to a human readable string (`13500` → `13.5K`) based on [SI prefixes](https://en.wikipedia.org/wiki/Metric_prefix). | ||
@@ -21,10 +21,12 @@ ## Install | ||
humanNumber(100) // 100 | ||
humanNumber(1000) // 1K | ||
humanNumber(1500) // 1.5K | ||
humanNumber(10000) // 10K | ||
humanNumber(10500) // 10.5K | ||
humanNumber(100000) // 100K | ||
humanNumber(100500) // 100.5K | ||
humanNumber(1000000) // 1M | ||
humanNumber(1500000) // 1.5M | ||
humanNumber(1_000) // 1K | ||
humanNumber(1_500) // 1.5K | ||
humanNumber(10_000) // 10K | ||
humanNumber(10_500) // 10.5K | ||
humanNumber(100_000) // 100K | ||
humanNumber(100_500) // 100.5K | ||
humanNumber(1_000_000) // 1M | ||
humanNumber(1_500_000) // 1.5M | ||
humanNumber(1_000_000_000) // 1T | ||
humanNumber(1_500_000_000) // 1.5T | ||
``` | ||
@@ -31,0 +33,0 @@ |
'use strict' | ||
const ALPHABET = 'KMGTPEZY'.split('') | ||
const ALPHABET = ['K', 'M', 'B', 'T'] | ||
const TRESHOLD = 1e3 | ||
module.exports = function (n, fn) { | ||
n = Math.abs(n) | ||
let index = 0 | ||
while (n >= TRESHOLD && ++index < ALPHABET.length) n /= TRESHOLD | ||
module.exports = (n, fn) => { | ||
let idx = 0 | ||
while (n >= TRESHOLD && ++idx <= ALPHABET.length) n /= TRESHOLD | ||
if (fn) n = fn(n) | ||
return String(index === 0 ? n : n + ALPHABET[index - 1]) | ||
return String(idx === 0 ? n : n + ALPHABET[idx - 1]) | ||
} |
Trivial Package
Supply chain riskPackages less than 10 lines of code are easily copied into your own project and may not warrant the additional supply chain risk of an external dependency.
Found 1 instance in 1 package
Trivial Package
Supply chain riskPackages less than 10 lines of code are easily copied into your own project and may not warrant the additional supply chain risk of an external dependency.
Found 1 instance in 1 package
5385
2.18%45
4.65%9
-10%