Heim  >  Artikel  >  Web-Frontend  >  JS获取月的最后一天与JS得到一个月份最大天数的实例代码_javascript技巧

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

WBOY
WBOYOriginal
2016-05-16 17:08:561244Durchsuche
<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();
}

用javascript获取某月天数方法如下:

目标:获取2014/4月份的天数

//构造一个日期对象:
var day = new Date(2014,4,0); 
//获取天数:
var daycount = day.getDate();

说明:OK,你想要的天数已经出来了。getDate()是获取的最后一天,就是当月的天数 注:我们在构造日期对象时,4其实是实际构造的5月份,因为月份是从0开始的。而第三个数0天数,要求最小是1号,比1号小的话,就成了你要的3月最后那一天了。

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn