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

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章