js控制日期的前或后N天,前或后一个月

Posted 和风细雨汪汪

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js控制日期的前或后N天,前或后一个月相关的知识,希望对你有一定的参考价值。

/*获取指定日期前或者后指定间隔时间

  • sdate:指定日期

  • interval:时间间隔

  • caret:间隔符/
    function getNowFormatDate(sdate,interval,caret) {
    var patt1 = /^\d{4}-([0-1]?[0-9])-([0-3]?[0-9])$/; //判断输入的日期是否符合格式正则表达式
    if(!(sdate && typeof(sdate) == "string" && patt1.test(sdate))){
    sdate = new Date(); //不满足日期的则使用当前年月日
    }
    interval = isNaN(parseInt(interval)) ? 0 : parseInt(interval);//若没有输入间隔,则使用当前日
    caret = (caret && typeof(caret) == "string") ? caret : "-";// 默认间隔符为‘-‘
    var gdate = new Date(sdate).getTime();//获取指定年月日
    gdate = gdate + 1000
    606024interval; //加减相差毫秒数
    var speDate = new Date(gdate);//获取指定好毫秒数时间
    var preYear = speDate.getFullYear();
    var preMonth = speDate.getMonth() + 1;
    var preDay = speDate.getDate();
    preMonth = (preMonth < 10) ? ("0" + preMonth) :preMonth;
    preDay = (preDay < 10) ? ("0" + preDay) :preDay;
    var preDate = preYear + caret + preMonth + caret + preDay;
    return preDate;
    }
    /
    获取上一个月

  • @date 格式为yyyy-mm-dd的日期
    /
    function getPreMonth(date) {
    var arr = date.split(‘-‘);
    var year = arr[0]; //获取当前日期的年份
    var month = arr[1]; //获取当前日期的月份
    var day = arr[2]; //获取当前日期的日
    var days = new Date(year, month, 0);
    days = days.getDate(); //获取当前日期中月的天数
    var year2 = year;
    var month2 = parseInt(month) - 1;
    if (month2 == 0) {
    year2 = parseInt(year2) - 1;
    month2 = 12;
    }
    var day2 = day;
    var days2 = new Date(year2, month2, 0);
    days2 = days2.getDate();
    if (day2 > days2) {
    day2 = days2;
    }
    if (month2 < 10) {
    month2 = ‘0‘ + month2;
    }
    var t2 = year2 + ‘-‘ + month2 + ‘-‘ + day2;
    return t2;
    }
    /
    *

  • 获取下一个月

  • @date 格式为yyyy-mm-dd的日期
    */
    function getNextMonth(date) {
    var arr = date.split(‘-‘);
    var year = arr[0]; //获取当前日期的年份
    var month = arr[1]; //获取当前日期的月份
    var day = arr[2]; //获取当前日期的日
    var days = new Date(year, month, 0);
    days = days.getDate(); //获取当前日期中的月的天数
    var year2 = year;
    var month2 = parseInt(month) + 1;
    if (month2 == 13) {
    year2 = parseInt(year2) + 1;
    month2 = 1;
    }
    var day2 = day;
    var days2 = new Date(year2, month2, 0);
    days2 = days2.getDate();
    if (day2 > days2) {
    day2 = days2;
    }
    if (month2 < 10) {
    month2 = ‘0‘ + month2;
    }

    var t2 = year2 + ‘-‘ + month2 + ‘-‘ + day2;
    return t2;
    }

以上是关于js控制日期的前或后N天,前或后一个月的主要内容,如果未能解决你的问题,请参考以下文章

python如何获取txt文件一行中特定字符前或后的所有字符

5-14

AOP(面向切面编程)初识Demo

js如何获取前几个月或后几个月时间

Python基础

获取某一天的前多少天多少月多少年的时间