JSFiddle - React, Tailwind, and code Playground
by evan
JavaScript
var start = '8-2014';
var end = '7-2012';
var generateDateSeries = function (start, end) {
var startDate, endDate, dateSeries = [], working = [];
startDate = start.split('-');
startDate = [parseInt(startDate[0], 10), parseInt(startDate[1], 10)];
endDate = end.split('-');
endDate = [parseInt(endDate[0], 10), parseInt(endDate[1], 10)];
if (startDate[0] < 1 || startDate[0] > 12 ||
endDate[0] < 1 || endDate[0] > 12 ||
startDate[1] > endDate[1]) {
throw new Error("Invalid date range.");
}
working = startDate;
while(1) {
dateSeries.push(working.join('-'));
if (working[1] === endDate[1] && working[0] === endDate[0]) {
break;
}
if (working[0] === 12) {
working[0] = 1;
working[1] += 1;
} else {
working[0] += 1;
}
}
return dateSeries;
};
console.log(generateDateSeries(start, end));