ms2duration
Convert a number of milliseconds to a string duration.
Usage
var ms2duration = require( '@stdlib/time/ms2duration' );
ms2duration( str )
Converts a number of milliseconds to a string duration.
var duration = ms2duration( 1030 );
// returns '1s30ms'
duration = ms2duration( 3600000 );
// returns '1h'
Notes
A duration string is a string containing a sequence of time units. A time unit is a non-negative integer followed by a unit identifier. The following unit identifiers are supported:
d
: daysh
: hoursm
: minutess
: secondsms
: milliseconds
For example, the string
1m3s10ms
is a duration string containing three time units:1m
(1 minute),3s
(3 seconds), and10ms
(10 milliseconds). The string60m
is a duration string containing a single time unit:60m
(60 minutes).
Examples
var ms2duration = require( '@stdlib/time/ms2duration' );
var duration = ms2duration( 1030 );
// returns '1s30ms'
duration = ms2duration( 3600000 );
// returns '1h'
duration = ms2duration( 0 );
// returns '0ms'
duration = ms2duration( 86400000 );
// returns '1d'
duration = ms2duration( 86400000+3600000+60000+1000+100 );
// returns '1d1h1m1s100ms'
CLI
Usage
Usage: ms2duration [options] [<string>]
Options:
-h, --help Print this message.
-V, --version Print the package version.
--split sep Delimiter for stdin data. Default: '/\\r?\\n/'.
Notes
If the split separator is a regular expression, ensure that the
split
option is either properly escaped or enclosed in quotes.# Not escaped... $ echo -n $'3000\n25300' | ms2duration --split /\r?\n/ # Escaped... $ echo -n $'3000\n25300' | ms2duration --split /\\r?\\n/
The implementation ignores trailing delimiters.
Examples
$ ms2duration 1000
1s
To use as a standard stream,
$ echo -n '1000\n2000' | ms2duration
1s
2s
By default, when used as a standard stream, the implementation assumes newline-delimited data. To specify an alternative delimiter, set the split
option.
$ echo -n '1350,2000' | ms2duration --split ','
1s350ms
2s