<html xmlns="http://www.w3.org/1999/xhtml" > <head> <title>标题页</title> <script language="javascript"> function getLastDay(year,month) { var new_year = year; //取当前的年份 var new_month = month++;//取下一个月的第一天,方便计算(最后一天不固定) if(month>12) //如果当前大于12月,则年份转到下一年 { new_month -=12; //月份减 new_year++; //年份增 } var newnew_date = new Date(new_year,new_month,1); //取当年当月中的第一天 return (new Date(new_date.getTime()-1000*60*60*24)).getDate();//获取当月最后一天日期 } </script> <body> <input type="button" value="取2007年5月的最后一天" /> </body> </html>
JS里 面的new Date("xxxx/xx/xx")这个日期的构造方法有一个妙处,
当你传入的是"xxxx/xx/0"(0号)的话,得到的日期是"xx"月的前一个 月的最后一天("xx"月的最大取值是69,题外话),
当你传入的是"xxxx/xx/1"(1号)的话,得到的日期是"xx"月的后一个 月的第一天(自己理解)
如果传入"1999/13/0",会得到"1998/12/31"。而且最大的好处是当你传入"xxxx/3/0",会得到xxxx年2月的最后一天,它会自动判断当年是否是闰年来返回28或29,不用自己判断,
所以,我们想得到选择年选择月有多少天的话,只需要
var temp=new Date("选择年/选择月+1/0");
return temp.getDate()//最大天数
校验的话,也可以用这个方法。
下面是使用JS编写的获取某年某月有多少天的getDaysInMonth(year, month)方法:
复制代码 代码如下:
function getDaysInMonth(year,month){
month = parseInt(month,10)+1;
var temp = new Date(year+"https://www.jb51.net/"+month+"/0");
return temp.getDate();
}
用javascript获取某月天数方法如下:
目标:获取2014/4月份的天数
//构造一个日期对象: var day = new Date(2014,4,0); //获取天数: var daycount = day.getDate();
说明:OK,你想要的天数已经出来了。getDate()是获取的最后一天,就是当月的天数 注:我们在构造日期对象时,4其实是实际构造的5月份,因为月份是从0开始的。而第三个数0天数,要求最小是1号,比1号小的话,就成了你要的3月最后那一天了。
您可能感兴趣的文章: