JSFiddle - React, Tailwind, and code Playground
by Superman
HTML
<script src="http://kooiinc.github.io/JSHelpers/Helpers-min.js"></script>
<p id="dates"></p>
JavaScript
$(document).ready(function(){
var result = new Array();
result = recurringDates(new Date("01/01/2015"),new Date("01/31/2015"),7,"Date",true);
console.log(result);
$("#dates").html(result+"\n");
});
function recurringDates(startDate, endDate, interval, intervalType, noweekends) {
intervalType = intervalType || 'Date';
var date = startDate;
var recurrent = [];
var setget = {set: 'set'+intervalType, get: 'get'+intervalType};
while (date < endDate) {
recurrent.push( noweekends ? noWeekend() : new Date(date) );
date[setget.set](date[setget.get]()+interval);
}
// add 1 day for sunday, subtract one for saturday
function noWeekend() {
var add, currdate = new Date(date), day = date.getDay();
if (~[6,0].indexOf(day)) {
currdate.setDate(currdate.getDate() + (add = day == 6 ? -1 : 1));
}
return new Date(currdate);
}
return recurrent;
}