logo

dateAdd JavaScript

JavaScript: The Definitive Guide

Overview: The dateAdd determines a future date based on three parameters: elasped days, elasped months, and elasped years. Based on these three parameter a future date is calculated.

function dateAdd(startDate, numDays, numMonths, numYears)
{
	var returnDate;
	var yearsToAdd;
	var month;

	returnDate = new Date(startDate.getTime());

	yearsToAdd=numYears;
	
	month = returnDate.getMonth()+ numMonths;
	
	if (month > 11)
	{
		yearsToAdd = Math.floor((month+1)/12);
		month -= 12*yearsToAdd;
		yearsToAdd += numYears;
	}
	returnDate.setMonth(month);
	returnDate.setFullYear(returnDate.getFullYear()	+ yearsToAdd);
	
	returnDate.setTime(returnDate.getTime()+60000*60*24*numDays);

	return returnDate;

}
s