villebro / pretty-ms

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

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

pretty-ms Build Status

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

Install

$ npm install pretty-ms

Usage

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

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

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

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

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

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

// `formatSubMilliseconds` option
prettyMilliseconds(100.400080, {formatSubMilliseconds: true})
//=> '100ms 400µs 80ns'

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

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

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 45s5 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.

Related

License

MIT © Sindre Sorhus

About

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

License:MIT License


Languages

Language:JavaScript 93.4%Language:TypeScript 6.6%