• JS获取最近三个月日期范围


    function getLast3Month() {
        var now = new Date();
        var year = now.getFullYear();
        var month = now.getMonth() + 1;//0-11表示1-12月
        var day = now.getDate();
        var dateObj = {};
        if (parseInt(month) < 10) {
            month = "0" + month;
        }
        if (parseInt(day) < 10) {
            day = "0" + day;
        }
    
        dateObj.now = year + '-' + month + '-' + day;
    
        if (parseInt(month) == 1) {//如果是1月份,则取上一年的10月份
            dateObj.last = (parseInt(year) - 1) + '-10-' + day;
            return dateObj;
        }
        if (parseInt(month) == 2) {//如果是2月份,则取上一年的11月份
            dateObj.last = (parseInt(year) - 1) + '-11-' + day;
            return dateObj;
        }
        if (parseInt(month) == 3) {//如果是3月份,则取上一年的12月份
            dateObj.last = (parseInt(year) - 1) + '-12-' + day;
            return dateObj;
        }
    
        var preSize = new Date(year, parseInt(month) - 3, 0).getDate();//开始时间所在月的总天数
        if (preSize < parseInt(day)) {
       // 开始时间所在月的总天数<本月总天数,比如当前是5月30日,在2月中没有30,则取下个月的第一天(3月1日)为开始时间
            let resultMonth = parseInt(month) - 2 < 10 ? ('0' + parseInt(month) - 2) : (parseInt(month) - 2);  
            dateObj.last = year + '-' + resultMonth + '-01';  
            return dateObj;
        }
    
        if (parseInt(month) <= 10) {
            dateObj.last = year + '-0' + (parseInt(month) - 3) + '-' + day;
            return dateObj;
        } else {
            dateObj.last = year + '-' + (parseInt(month) - 3) + '-' + day;
            return dateObj;
        }
    
    }
    getLast3Month(Date.now())  //{now:"2019-07-04",last:"2019-04-04"}
    

      

  • 相关阅读:
    发现pythonWin里面的一个地方挺别扭
    细节-质量-态度
    对于Borland出售IDE业务的一点感想
    ReView100遍?!
    代码生成原则Top10
    使用asp.net进行多关键字查询的例子
    代码生成FAQ(翻译)
    msdn中文上的几篇有用的sqlServer2000的文章
    RSS 阅读工具Omea Reader
    Ubuntu18.04 安装Postgresql12
  • 原文地址:https://www.cnblogs.com/AIonTheRoad/p/11134097.html
Copyright © 2020-2023  润新知