You are here: irt.org | FAQ | JavaScript | Date | Q1773 [ previous next ]
Given a start date and number of days, the following gives you the end date?
function days_between(startdate,no_of_days) {
var date = startdate.substring(0,2);
var month = startdate.substring(3,5);
var year = startdate.substring(6,10);
startdate = month+"/"+date+"/"+year;
var startdate = new Date(startdate)
var curr_mon = startdate.getMonth()+1;
var next_mon = curr_mon+1;
dayIncrement=0;
for (i=0;i<no_of_days;i++) {
today_date = startdate.getDate();
curr_mon = startdate.getMonth()+1;
dayIncrement = today_date;
if (curr_mon==next_mon) {
next_mon = next_mon+1;
dayIncrement=1;
}
if (startdate.getDay() == 0 || startdate.getDay() == 6) {
no_of_days = no_of_days + 1;
}
if ((i+1)==no_of_days) {
startdate.setDate(dayIncrement);
} else {
startdate.setDate(dayIncrement+1);
}
}
var date = startdate.getDate();
var month = startdate.getMonth()+1;
var year = startdate.getYear();
enddate = date+"/"+month+"/"+year;
return enddate ;
}
</script>Submitted by G.LaxmiNarayan