我是靠谱客的博主 负责咖啡,最近开发中收集的这篇文章主要介绍js中获取月份和季度的最后一天,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

//获取选中月的第一天和最后一天
function getFirstAndLastMonthDay( year, month){ 
 var firstdate = year + '-' + month + '-01';
 var day = new Date(year,month,0);
 var lastdate = year + '-' + month + '-' + day.getDate();//获取当月最后一天日期 
}
//获取选中季度的第一天和最后一天
function getFirstAndLastQuarterDay(year,quarter) {
 if(quarter=="1"){
  var firstdate = year + '-' + 01 + '-01';
  var day = new Date(year,3,0);
  var lastdate = year + '-' + 03 + '-' + day.getDate();//获取第一季度最后一天日期 
 }else if(quarter=="2") {
  var firstdate = year + '-' + 04 + '-01';
  var day = new Date(year,6,0);
  var lastdate = year + '-' + 06 + '-' + day.getDate();//获取第二季度最后一天日期      
 } else if(quarter=="3") {
  var firstdate = year + '-' + 07 + '-01';
  var day = new Date(year,9,0);
  var lastdate = year + '-' + 09 + '-' + day.getDate();//获取第三季度最后一天日期 
 } else if(quarter=="4") {
  var firstdate = year + '-' + 10+ '-01';
  var day = new Date(year,12,0);
  var lastdate = year + '-' + 12 + '-' + day.getDate();//获取第四季度最后一天日期
 }
}

 

 

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();
}

最后

以上就是负责咖啡为你收集整理的js中获取月份和季度的最后一天的全部内容,希望文章能够帮你解决js中获取月份和季度的最后一天所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(52)

评论列表共有 0 条评论

立即
投稿
返回
顶部