Convert milliseconds to a human readable string: `1337000000` → `15d 11h 23m 20s`
JavaScript
Clone or download

readme.md

pretty-ms Build Status

Convert milliseconds to a human readable string: 133700000015d 11h 23m 20s

Install

$ npm install pretty-ms

Usage

const prettyMs = require('pretty-ms');

prettyMs(1337000000);
//=> '15d 11h 23m 20s'

prettyMs(1337);
//=> '1.3s'

prettyMs(133);
//=> '133ms'

// compact option
prettyMs(1337, {compact: true});
//=> '~1s'

// verbose option
prettyMs(1335669000, {verbose: true});
//=> '15 days 11 hours 1 minute 9 seconds'

// can be useful for time durations
prettyMs(new Date(2014, 0, 1, 10, 40) - new Date(2014, 0, 1, 10, 5))
//=> '35m'

API

prettyMs(input, [options])

input

Type: number

Milliseconds to humanize.

options

Type: Object

secDecimalDigits

Type: number
Default: 1

Number of digits to appear after the seconds decimal point.

msDecimalDigits

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: 13s13.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.

verbose

Type: boolean
Default: false

Use full-length units: 5h 1m 45s5 hours 1 minute 45 seconds

Related

License

MIT © Sindre Sorhus