js处理自然日差值问题

需求:生效月仅一个月且固定,默认为下个月(办理日距离月末少于等于5个自然日时,生效年月默认下个月+1);

 function showMonth(){
        var date=new Date();
        var mons = [];
        var days=mons[date.getMonth()]-_getNum(date.getDate())+1  // 当前月总天数-当前日前+1
        var year=new Date().getFullYear();
        function _getNum(num){
            if(num<10)
                return "0"+num;
            else
                return num;
        }
        // 判断是否闰年
        if(year % 4 == 0 && year % 100 != 0 || year % 400 == 0){
            mons = [31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]
        }else{
            mons=[31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]
        }
        // 判断是否小于等于5个自然日 
        if(days<=5){
            return _getNum((new Date().getMonth()+1)+1)   //当天月+1
        }else{
            return _getNum(new Date().getMonth()+1)
        }
    }
发布了28 篇原创文章 · 获赞 8 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/yuanmengdage/article/details/89927521
今日推荐