pretty-ms 
Convert milliseconds to a human readable string: 1337000000
→ 15d 11h 23m 20s
Install
$ npm install pretty-ms
Usage
const prettyMilliseconds = require('pretty-ms');
prettyMilliseconds(1337000000);
prettyMilliseconds(1337);
prettyMilliseconds(133);
prettyMilliseconds(1337, {compact: true});
prettyMilliseconds(1335669000, {verbose: true});
prettyMilliseconds(95500, {colonNotation: true});
prettyMilliseconds(1337000000, {padUnits: true});
prettyMilliseconds(100.400080, {formatSubMilliseconds: true})
prettyMilliseconds(new Date(2014, 0, 1, 10, 40) - new Date(2014, 0, 1, 10, 5))
API
prettyMilliseconds(milliseconds, options?)
milliseconds
Type: number
Milliseconds to humanize.
options
Type: object
secondsDecimalDigits
Type: number
Default: 1
Number of digits to appear after the seconds decimal point.
millisecondsDecimalDigits
Type: number
Default: 0
Number of digits to appear after the milliseconds decimal point.
Useful in combination with process.hrtime()
.
keepDecimalsOnWholeSeconds
Type: boolean
Default: false
Keep milliseconds on whole seconds: 13s
→ 13.0s
.
Useful when you are showing a number of seconds spent on an operation and don't want the width of the output to change when hitting a whole number.
compact
Type: boolean
Default: false
Only show the first unit: 1h 10m
→ 1h
.
Also ensures that millisecondsDecimalDigits
and secondsDecimalDigits
are both set to 0
.
unitCount
Type: number
Default: Infinity
Number of units to show. Setting compact
to true
overrides this option.
verbose
Type: boolean
Default: false
Use full-length units: 5h 1m 45s
→ 5 hours 1 minute 45 seconds
separateMilliseconds
Type: boolean
Default: false
Show milliseconds separately. This means they won't be included in the decimal part of the seconds.
formatSubMilliseconds
Type: boolean
Default: false
Show microseconds and nanoseconds.
colonNotation
Type: boolean
Default: false
Display time using colon notation: 5h 1m 45s
→ 5:01:45
. Always shows time in at least minutes: 1s
→ 0:01
Useful when you want to display time without the time units, similar to a digital watch.
Setting colonNotation
to true
overrides the following options to false
:
compact
formatSubMilliseconds
separateMilliseconds
verbose
padUnits
Type: boolean
Default: false
Setting padUnits
to true
will show the time with a space before the unit 5h 1m 45s
→ 5 h 1 m 45 s
.
Related