Rounds off datetime to nearest interval
npm i datetime-round
const DatetimeRound = require('datetime-round');
DatetimeRound(moment('2019-08-30 10:11:25'), 30, 'minutes', 'ceil')
.format('YYYY-MM-DD HH:mm:ss');
// 2019-08-30 10:30:00
DatetimeRound(moment('2019-08-30 10:11:25'), 30, 'minutes', 'floor')
.format('YYYY-MM-DD HH:mm:ss');
// 2019-08-30 10:00:00
DatetimeRound(moment('2019-08-30 10:11:25'), 10, 'minutes', 'ceil')
.format('YYYY-MM-DD HH:mm:ss');
// 2019-08-30 10:20:00
DatetimeRound(moment('2019-08-30 10:11:25'), 10, 'minutes', 'floor')
.format('YYYY-MM-DD HH:mm:ss');
// 2019-08-30 10:10:00
DatetimeRound(moment('2019-08-30 10:11:25'), 5, 'minutes', 'ceil')
.format('YYYY-MM-DD HH:mm:ss');
// 2019-08-30 10:15:00
DatetimeRound(moment('2019-08-30 10:11:25'), 5, 'minutes', 'floor')
.format('YYYY-MM-DD HH:mm:ss');
// 2019-08-30 10:10:00
DatetimeRound will accept following parameters as input
- date: String datetime / moment object
- interval: Time interval till which time needs to be rounded to (integer)
- intervalType: Type of interval (
minutes
,hours
,seconds
)Refer to moment.duration docs for all available formats.
- method: Rounding method,
floor
,ceil
.... (It supports all the round methods available in NodeJSMath
package)
Interested in contributing to this project? You can log any issues or suggestion related to this library here
Read our contributing guide on getting started with contributing to the codebase