To create a duration, call with the length of time in milliseconds.
moment.duration(100); // 100 milliseconds
If you want to create a moment with a unit of measurement other than milliseconds, you can pass the unit of measurement as well.
moment.duration(2, 'seconds');
moment.duration(2, 'minutes');
moment.duration(2, 'hours');
moment.duration(2, 'days');
moment.duration(2, 'months');
The same shorthand for moment#add
and moment#subtract
works here as well.
As of 2.1.0, moment supports parsing ASP.NET style time spans. The following formats are supported.
The format is an hour, minute, second string separated by colons like 23:59:59
. The number of days can be prefixed with a dot separator like so 7.23:59:59
. Partial seconds are supported as well 23:59:59.999
.
moment.duration('23:59:59');
moment.duration('7.23:59:59.999');
As of 2.3.0, moment also supports parsing durations.
moment.duration('P1Y2M3DT4H5M6S');
moment.duration('P1M');
As of 2.13.0, mixed negative and positive signs are supported when parsing durations.
moment.duration('PT-6H3M')
As of 2.18.0, invalid durations are supported, similarly to invalidmoments. To create an invalid duration you can pass NaN
for a value ofa unit.
In upcoming releases expect invalid durations to cover more cases (likenull values for units).
moment.duration(NaN);