html5中文学习网

您的位置: 首页 > 网站及特效实例 > javascript特效 » 正文

JS获取月的最后一天与JS得到一个月份最大天数的实例代码_javascript技巧_

[ ] 已经帮助:人解决问题

复制代码 代码如下:

<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 id="Button1" type="button" value="取2007年5月的最后一天" onClick="alert(getLastDay(2007,5))" />    
</body>    
</html>  


js得到一个月最大天数

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+"/"+month+"/0");
      return temp.getDate();
}

(责任编辑:)
推荐书籍
推荐资讯
关于HTML5先行者 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 人才招聘 - 帮助