Package Exports
- @darkwolf/duration.mjs
- @darkwolf/duration.mjs/Day
- @darkwolf/duration.mjs/Entity
- @darkwolf/duration.mjs/EntityType
- @darkwolf/duration.mjs/Error
- @darkwolf/duration.mjs/FormatDisplay
- @darkwolf/duration.mjs/FormatNumeric
- @darkwolf/duration.mjs/FormatStyle
- @darkwolf/duration.mjs/FormatTense
- @darkwolf/duration.mjs/FormatType
- @darkwolf/duration.mjs/Formatter
- @darkwolf/duration.mjs/Hour
- @darkwolf/duration.mjs/InvalidDurationError
- @darkwolf/duration.mjs/Millisecond
- @darkwolf/duration.mjs/Minute
- @darkwolf/duration.mjs/Month
- @darkwolf/duration.mjs/Quarter
- @darkwolf/duration.mjs/Second
- @darkwolf/duration.mjs/Unit
- @darkwolf/duration.mjs/Week
- @darkwolf/duration.mjs/Year
- @darkwolf/duration.mjs/constants
- @darkwolf/duration.mjs/constants/Day
- @darkwolf/duration.mjs/constants/Day.mjs
- @darkwolf/duration.mjs/constants/EntityType
- @darkwolf/duration.mjs/constants/EntityType.mjs
- @darkwolf/duration.mjs/constants/FormatDisplay
- @darkwolf/duration.mjs/constants/FormatDisplay.mjs
- @darkwolf/duration.mjs/constants/FormatNumeric
- @darkwolf/duration.mjs/constants/FormatNumeric.mjs
- @darkwolf/duration.mjs/constants/FormatStyle
- @darkwolf/duration.mjs/constants/FormatStyle.mjs
- @darkwolf/duration.mjs/constants/FormatTense
- @darkwolf/duration.mjs/constants/FormatTense.mjs
- @darkwolf/duration.mjs/constants/FormatType
- @darkwolf/duration.mjs/constants/FormatType.mjs
- @darkwolf/duration.mjs/constants/Hour
- @darkwolf/duration.mjs/constants/Hour.mjs
- @darkwolf/duration.mjs/constants/Millisecond
- @darkwolf/duration.mjs/constants/Millisecond.mjs
- @darkwolf/duration.mjs/constants/Minute
- @darkwolf/duration.mjs/constants/Minute.mjs
- @darkwolf/duration.mjs/constants/Month
- @darkwolf/duration.mjs/constants/Month.mjs
- @darkwolf/duration.mjs/constants/Quarter
- @darkwolf/duration.mjs/constants/Quarter.mjs
- @darkwolf/duration.mjs/constants/Second
- @darkwolf/duration.mjs/constants/Second.mjs
- @darkwolf/duration.mjs/constants/Unit
- @darkwolf/duration.mjs/constants/Unit.mjs
- @darkwolf/duration.mjs/constants/Week
- @darkwolf/duration.mjs/constants/Week.mjs
- @darkwolf/duration.mjs/constants/Year
- @darkwolf/duration.mjs/constants/Year.mjs
- @darkwolf/duration.mjs/constants/index.mjs
- @darkwolf/duration.mjs/errors
- @darkwolf/duration.mjs/errors/Error
- @darkwolf/duration.mjs/errors/Error.mjs
- @darkwolf/duration.mjs/errors/InvalidDurationError
- @darkwolf/duration.mjs/errors/InvalidDurationError.mjs
- @darkwolf/duration.mjs/errors/index.mjs
- @darkwolf/duration.mjs/index.mjs
- @darkwolf/duration.mjs/package.json
- @darkwolf/duration.mjs/types
- @darkwolf/duration.mjs/types/Entity
- @darkwolf/duration.mjs/types/Entity.mjs
- @darkwolf/duration.mjs/types/Formatter
- @darkwolf/duration.mjs/types/Formatter.mjs
- @darkwolf/duration.mjs/types/index.mjs
Readme
Duration
Install
ECMAScript (Node.js v12.x LTS or higher)
npm i --save @darkwolf/duration.mjs
CommonJS (Node.js v10.x LTS or higher)
npm i --save @darkwolf/duration.cjs
Using
// ECMAScript
import Duration from '@darkwolf/duration.mjs'
// CommonJS
const Duration = require('@darkwolf/duration.cjs')
Duration.parse('23h 59min 59sec') // => 86399000
Duration.parse('-23h 59min 59sec') // => -86399000
Duration.ms('23ч 59мин 59сек') // => 86399000
Duration.sec('23ч 59мин 59сек') // => 86399
const duration = new Duration('23h 59min 59sec')
duration.toString({millis: false}) // => '23:59:59'
duration.toLocaleString() // => '23 hours 59 minutes 59 seconds'
duration.toLocaleString('ru', {style: 'short'}) // => '23 ч. 59 мин. 59 сек.'
duration
.add('1 second')
.subtract('.5 day')
duration.value // => 43200000
const other = duration
.clone()
.add('12 hours')
other.value // => 86400000
const sum = duration + other // => 129600000