Ustawianie miesiąca - setMonth
Jak zmienić miesiąc w podanej dacie?
Date.prototype.setMonth(month) Date.prototype.setMonth(month, date)
- Parametry:
Number
month - miesiąc z zakresu 0...11Number
date - dzień miesiąca z zakresu 0...31 (domyślnie: wartość Date.prototype.getDate())- Wartość:
Number
- liczba milisekund od północy 1 stycznia 1970 w strefie czasowej południka zerowego- Wyjątki:
TypeError
- bieżący obiekt nie jest typu daty i czasu
Ustawia liczbowy miesiąc oraz ewentualnie dzień miesiąca w obiekcie daty i czasu, określony w lokalnej strefie czasowej. Możliwe jest również podanie wartości spoza przewidzianego zakresu - w tym ujemnej. Wtedy funkcja sama przeliczy prawidłową datę.
Uczulam, że wartość 1, podana jako month, wcale nie oznacza stycznia, lecz luty. Natomiast 11 to grudzień.
Przykład Date.prototype.setMonth
var x = new Date("1410-07-15T00:00:00.000+02:00"); x.setMonth(7, 3); // -17653428000000 x; // new Date("1410-08-03T00:00:00.000+02:00") x.setMonth(12); // -17640205200000 x; // new Date("1411-01-03T00:00:00.000+01:00") x.setMonth(-1); // -17642883600000 x; // new Date("1410-12-03T00:00:00.000+01:00") Date.prototype.setMonth.call(null, 0); // TypeError Date.prototype.setMonth.call(undefined, 0); // TypeError Date.prototype.setMonth.call(0, 0); // TypeError Date.prototype.setMonth.call("", 0); // TypeError Date.prototype.setMonth.call("2000", 0); // TypeError Date.prototype.setMonth.call({}, 0); // TypeError