Ultimo giorno del mese?
importanza: 5
Scrivi una funzione getLastDayOfMonth(year, month)
che ritorna l’ultimo giorno del mese. Potrebbe essere il 30, il 31 o anche 28/29.
Parametri:
year
– anno nel formato 4 cifre, ad esempio 2012.month
– mese, da 0 a 11.
Ad esempio, getLastDayOfMonth(2012, 1) = 29
(anno bisestile, Febbraio).
Creiamo un oggetto date
con il mese successivo, e come giorno passiamo zero:
function getLastDayOfMonth(year, month) {
let date = new Date(year, month + 1, 0);
return date.getDate();
}
alert( getLastDayOfMonth(2012, 0) ); // 31
alert( getLastDayOfMonth(2012, 1) ); // 29
alert( getLastDayOfMonth(2013, 1) ); // 28
Formalmente, le date cominciano da 1, ma tecnicamente possiamo passare qualsiasi numero, l’oggetto si aggiusterà automaticamente. Quindi quando gli passiamo 0, allora significherà “il giorno precedente al primo giorno del mese”; in altre parole: “l’ultimo giorno del mese precedente”.
function getLastDayOfMonth(year, month) {
let date = new Date(year, month + 1, 0);
return date.getDate();
}