js获取每月天数的两种方法:
1、存储到一个数组中进行获取,但是如果是二月份的话就需要首先判断是否闰年,再确定是28还是29天,
方法如下:
//是否为闰年
function is_leapYear(year) {
return (year%100==0?res=(year%400==0?1:0):res=(year%4==0?1:0));
}
console.log(28+is_leapYear(year));
以上代码可以在控制台输出指定年份的2月份的天数
2、通过js的Date对象,可以很方便的获取到每月的天数,在初始化Date对象时,我们可以通过这种方式:
var d = new Date(2017,6,0);
console.log(d.getDate());
以上代码可以在控制台输出2017年6月份的天数
Date对象月份从0开始,即0表示1月份,以此类推。
在上面的代码中,我们初始化d为7月份的第0天,由于JavaScript中day的范围为1~31中的值,所以当设为0时,会向前 一天,也即表示上个月(6月)的最后一天。
通过这种方式可以得到每个月份的天数,也不同区分闰年了,很方便~
可以写个这样的函数,如下:
function getMonthDates(year, month){
var d = new Date(year, month, 0);
return d.getDate();
}
在使用时传入想要获取的年份和月份即可,如下:
var totalDay = getMonthDates(2018,2); //28