//Month is 1 based
function daysInMonth(month,year) {
return new Date(year, month, 0).getDate();
}
//July
daysInMonth(7,2009); //31
//February
daysInMonth(2,2009); //28
daysInMonth(2,2008); //29
Ответ 2
Date.prototype.monthDays= function(){
var d= new Date(this.getFullYear(), this.getMonth()+1, 0);
return d.getDate();
}
Ответ 3
Следующее принимает любое допустимое значение datetime и возвращает количество дней в соответствующем месяце... это устраняет двусмысленность обоих других ответов...
// pass in any date as parameter anyDateInMonth
function daysInMonth(anyDateInMonth) {
return new Date(anyDateInMonth.getYear(),
anyDateInMonth.getMonth()+1,
0).getDate();}
Ответ 4
Другим возможным вариантом было бы использовать Datejs
Затем вы можете сделать
Date.getDaysInMonth(2009, 9)
Хотя добавление библиотеки только для этой функции является излишним, всегда приятно знать все доступные вам опции:)