如何在JavaScript中列出特定年份的一个月的天数?
我们知道 9月,4月,6月和11月30天。 其他所有人都有31人, 除了二月, 哪有28天清楚, 每个闰年都有29个。
我需要算一算闰年。 你知道任何本土的喜欢方式......或者是图书馆..你能建议吗?
答案 0 :(得分:9)
试试这个
function daysInMonth(m, y)
{
m=m-1; //month is zero based...
return 32 - new Date(y, m, 32).getDate();
}
用法:
>> daysInMonth(2,2000) //29
答案 1 :(得分:3)
这也可以假设为Jan=1, Feb=2 ... Dec=12
function daysInMonth(month,year)
{
return new Date(year, month, 0).getDate();
}
答案 2 :(得分:3)
当然,您可以根据您已经知道的内容编写一个函数,并结合闰年的逻辑:
// m is the month (January = 0, February = 1, ...)
// y is the year
function daysInMonth(m, y) {
return m === 1 && (!(y % 4) && ((y % 100) || !(y % 400))) ? 29
: [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31][m];
}
可被4整除但不能被100整除的年份,除非被400整除是闰年。
答案 3 :(得分:0)
可能有本地方法可以找到,但我认为很高兴知道,闰年算法实际上并不是很难自己实现:
function isLeapYear(year) {
if (year % 400 === 0) {
return true;
} else if (year % 100 === 0) {
return false;
} else if (year % 4 === 0) {
return true;
}
return false;
}