温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

javascript如何实现指定日期返回上月日期

发布时间:2021-07-09 13:47:09 来源:亿速云 阅读:212 作者:小新 栏目:web开发

这篇文章给大家分享的是有关javascript如何实现指定日期返回上月日期的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

具体如下:

在项目开发中,使用javascript对日期进行处理时,因为在查询中都会有一个初始值,大多都会在当前日期的基础上推一个月,在这种情况下,如果自己写一个,需要考虑的情况较多,在这里给大家分享一下一个比较完善的解决这个问题的方法。供大家参考。例如:给定截止日期enddate=2010-07-31

计算得到开始日期startdate=2010-06-30

这个问题的关键在于对以下几处的考虑:

1、startdate跨年

2、startdate是2月(需考虑闰年的情况)

3、大小月

<html> <script type="text/javascript"> function getInitStartDate(enddate) {   var comp = enddate.split("-");   var year = comp[0];   var month = comp[1];   var date = comp[2];   if (month == "01") { //前一月跨年     month = 12;     year = year - 1;   } else {     month = month - 1;     if (month == 2 && date > 28) {       date = isLeapYear(year) ? 29 : 28;     } else if (date == 31) {       switch (month) {       case 4:       case 6:       case 9:       case 11:         date = 30;         break;       default:         break;       }     }   }   month = ("" + month).length == 1 ? ("0" + month) : ("" + month);   var dateFormat = year + "-" + month + "-" + date;   return dateFormat; } function isLeapYear(y) { //判断y是否为闰年   return (y % 4 == 0) && (y % 400 == 0 || y % 100 != 0); } alert(getInitStartDate("2010-07-31")); </script> </html>

配套给出一个格式化日期的方法:

<script language="JavaScript">  Date.prototype.format = function(format) //author: meizz {  var o = {   "M+" : this.getMonth()+1, //month   "d+" : this.getDate(),  //day   "h+" : this.getHours(),  //hour   "m+" : this.getMinutes(), //minute   "s+" : this.getSeconds(), //second   "q+" : Math.floor((this.getMonth()+3)/3), //quarter   "S" : this.getMilliseconds() //millisecond  }  if(/(y+)/.test(format)) format=format.replace(RegExp.$1,   (this.getFullYear()+"").substr(4 - RegExp.$1.length));  for(var k in o)if(new RegExp("("+ k +")").test(format))   format = format.replace(RegExp.$1,    RegExp.$1.length==1 ? o[k] :     ("00"+ o[k]).substr((""+ o[k]).length));  return format; } alert(new Date().format("yyyy-MM-dd")); alert(new Date("january 12 2008 11:12:30").format("yyyy-MM-dd hh:mm:ss")); </script>

感谢各位的阅读!关于“javascript如何实现指定日期返回上月日期”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI