1.2.1 • Published 7 months ago
human-format v1.2.1
human-format
Converts a number to/from a human readable string:
1337
↔1.34kB
Installation
Node & Browserify/Webpack
Installation of the npm package:
> npm install --save human-format
Then require the package:
var humanFormat = require("human-format");
Browser
You can directly use the build provided at unpkg.com:
<script src="https://unpkg.com/human-format@1/index.js"></script>
Usage
Formatting
humanFormat(1337);
//=> '1.34 k'
// The maximum number of decimals can be changed.
humanFormat(1337, {
maxDecimals: 1,
});
//=> '1.3 k'
// maxDecimals can be set to auto, so that there is 1 decimal between -10 and 10 excluded and none out of this interval.
humanFormat(1337, {
maxDecimals: "auto",
});
//=> '1.3 k'
humanFormat(13337, {
maxDecimals: "auto",
});
//=> '13 k'
// A fixed number of decimals can be set.
humanFormat(1337, {
decimals: 4,
});
//=> '1.3370 k'
// Units and scales can be specified.
humanFormat(65536, {
scale: "binary",
unit: "B",
});
//=> 64 kiB
// There is a helper for this.
humanFormat.bytes(65536);
//=> 64 kiB
// A custom separator can be specified.
humanFormat(1337, {
separator: " - ",
});
//=> 1.34 - k
// Custom scales can be created!
var timeScale = new humanFormat.Scale({
seconds: 1,
minutes: 60,
hours: 3600,
days: 86400,
months: 2592000,
});
humanFormat(26729235, { scale: timeScale });
//=> 10.31 months
// Helper when the scale is regular, i.e. prefixes are powers of a constant factor
var binaryScale = humanFormat.Scale.create(["", "Ki", "Mi", "Gi", "Ti"], 1024);
humanFormat(173559053, { scale: binaryScale });
//=> 165.52 Mi
// You can force a prefix to be used.
humanFormat(100, { unit: "m", prefix: "k" });
//=> 0.1 km
// You can access the raw result.
humanFormat.raw(100, { prefix: "k" });
//=> {
// prefix: 'k',
// value: 0.09999999999999999 // Close value, not rounded.
// }
Parsing
humanFormat.parse("1.34 kiB", { scale: "binary" });
//=> 1372.16
// Fallbacks when possible if the prefix is incorrectly cased.
humanFormat.parse("1 g");
// => 1000000000
// You can access the raw result.
humanFormat.parse.raw("1.34 kB");
//=> {
// factor: 1000,
// prefix: 'k',
// unit: 'B',
// value: 1.34
//}
Contributions
Contributions are very welcomed, either on the documentation or on the code.
You may:
- report any issue you've encountered;
- fork and create a pull request.
Contributors:
- @djulien
- @qrohlf
- @Itay289
- @sweetpi
License
ISC © Julien Fontanet
1.2.1
7 months ago
1.2.0
2 years ago
1.1.0
2 years ago
1.0.0
3 years ago
0.11.0
5 years ago
0.10.1
7 years ago
0.10.0
7 years ago
0.9.2
8 years ago
0.9.1
8 years ago
0.9.0
8 years ago
0.8.0
8 years ago
0.7.0
9 years ago
0.6.0
9 years ago
0.5.1
10 years ago
0.5.0
10 years ago
0.4.0
10 years ago
0.3.0
10 years ago
0.2.0
11 years ago
0.1.4
11 years ago
0.1.3
11 years ago
0.1.2
11 years ago
0.1.0
11 years ago