Если значения параметров monthValue и dayValue опущены, используются значения, возвращаемые методами getMonth и getDate.
Если какой-либо переданный параметр имеет значение, лежащее вне предусмотренного диапазона, метод setFullYear пытается соответствующим образом изменить значение других параметров. Например, если использовать для monthValue значение 15, то год будет увеличен на 1 (yearValue+ 1), а 3 будет использовано в качестве значения месяца.
Пример: Изменение даты
// Меняем год на 1997-й
theBigDay = new Date();
theBigDay.setFullYear(1997);
Если задать лишние параметры в метод d.setFullYear(), то он все равно использует только те, что нужны ему - остальные проигнорирует:
var d = new Date("January 11, 1980 00:00:00"); d.setFullYear(1995, 11, 30, 10, 30); //1995 - год, 11 - декабрь, 30 - число, 10 - час, 30 - минуты alert("date: "+d); // Возвращает: Sat Dec 30 1995 00:00:00 GMT+0500