date-period v4.0.0
date-period 
Time period iterator.
A time period in this context is an array of Date objects, recurring at regular intervals, over a given period. Based on ISO 8601's duration and repeating interval format.
Mimics PHP's excellent DatePeriod class.
Installation
$ npm install date-period --save
Use
API
Start, duration and end date:
createPeriod({ start: Date, duration: String, end: Date }) ⇒ Array<Date>
Start, duration, and number of recurrences:
createPeriod({ start: Date, duration: String, recurrence: Number }) ⇒ Array<Date>
ISO 8601 Repeating time intervals:
createPeriod({ iso: String }) ⇒ Array<Date>
Note: the date
and duration
parameters above can be objects which have, respectively, toDate
and toString
methods. This way moment objects are supported.
Example
Require the module
const createPeriod = require('date-period');
Define a period
let start = new Date('2014-01-01T00:00:00Z'),
duration = 'P1D',
end = new Date('2014-01-05T00:00:00Z'), // not included in result
period;
period = createPeriod({ start, duration, end });
// or, with the number of recurrences instead of an end date:
period = createPeriod({ start, duration, recurrence: 3 });
// or, with a string formatted as an ISO 8601 repeating interval:
period = createPeriod({ iso: 'R3/2014-01-01T00:00:00Z/P1D' });
4 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
7 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
9 years ago
9 years ago
9 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
11 years ago
11 years ago
11 years ago