duration2ms
Convert a duration string to milliseconds.
Usage
var duration2ms = require( '@stdlib/time/duration2ms' );
duration2ms( str )
Converts a duration string to milliseconds.
var ms = duration2ms( '1d' );
// returns 86400000
ms = duration2ms( '1d2h3m4s5ms' );
// returns 93784005
Notes
A duration string is a string containing a sequence of time units. A time unit is a nonnegative 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).Duration strings are case insensitive. For example, the string
1M3S10MS
is equivalent to1m3s10ms
.
Examples
var duration2ms = require( '@stdlib/time/duration2ms' );
var ms = duration2ms( '5s20ms' );
// returns 5020
ms = duration2ms( '1h' );
// returns 3600000
ms = duration2ms( '1m2s3ms' );
// returns 62003
CLI
Usage
Usage: duration2ms [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 $'3s\n5s20ms' | duration2ms --split /\r?\n/ # Escaped... $ echo -n $'3s\n5s20ms' | duration2ms --split /\\r?\\n/
The implementation ignores trailing delimiters.
Examples
$ duration2ms 1s
1000
To use as a standard stream,
$ echo -n '1s\n2s' | duration2ms
1000
2000
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 '1s350ms,2s' | duration2ms --split ','
1350
2000