在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/HTML/ 計算當前月的最后一天,倒數(shù)第5天的日期

計算當前月的最后一天,倒數(shù)第5天的日期

需求是在每個月的倒數(shù)5天之內(nèi)顯示溫馨提示,的代碼是這樣的,計算出本月最后一天日期,還有當前時間,以及倒數(shù)第5天日期,用三個時間的時間戳來比較,可是總是有問題:大家?guī)臀铱聪挛业臅r間計算方法哪里不對?

<!-- 月底溫馨提示 -->
                <div class="inquire_search message_warm" id="message_warm">
                    <ul>
                        <li>
                            <img class="inquire_img" onclick="selectDeviceList()"  src="${pageContext.request.contextPath}/resources/new/${sessionScope.skin }/image/message_hot.png"/>
                            <span class="inquire_remind"><spring:message code="warmTip.PaySIMcard"/></span>
                        </li>
                        <li>
                            <img class="inquire_img" onclick="selectDeviceList()"  src="${pageContext.request.contextPath}/resources/new/${sessionScope.skin }/image/message_hot.png"/>
                            <span class="inquire_remind"><spring:message code="warmTip.PaySIMcard"/></span>
                        </li>
                    </ul>                
                </div>        

/*  獲取當前系統(tǒng)時間 */
   $(function(){
       // 獲取當前時間
       var mydate = new Date();
       var timestamp = Date.parse(new Date());

       // 獲取當前月最后一天日期
       var currentMonth=mydate.getMonth();
       var nextMonth=++currentMonth;
       var nextMonthFirstDay=new Date(mydate.getFullYear(),nextMonth,1);
       var oneDay=1000*60*60*24;
       var lastMonthDay = nextMonthFirstDay-oneDay;

       // 獲取當前月倒數(shù)第5天日期
       var fiveLastDay =  (nextMonthFirstDay-oneDay)-oneDay*5;
       
       // 月末5天提示滾動消息
       if(fiveLastDay<timestamp){
           if(timestamp<lastMonthDay){
               $("#message_warm").show();
               setInterval('AutoScroll("#message_warm")', 3000);
           }
       }else{
           $("#message_warm").hide();
       }
    });

/*  時間戳轉(zhuǎn)換成時間 */
   function timestampToTime(time) {
    // 比如需要這樣的格式 yyyy-MM-dd hh:mm:ss
       var date = new Date(time);
       Y = date.getFullYear() + '-';
       M = (date.getMonth()+1 < 10 ? '0'+(date.getMonth()+1) : date.getMonth()+1) + '-';
       D = date.getDate() + ' ';
       h = date.getHours() + ':';
       m = date.getMinutes() + ':';
       s = date.getSeconds(); 
       
          return Y+M+D+h+m+s;
   }
回答
編輯回答
笨小蛋

倒數(shù)第五天的時間戳應(yīng)該是:

var fiveLastDay = nextMonthFirstDay - oneDay * 5; // 多減去了一天?

你的判斷條件應(yīng)該改為:

if (timestamp >= fiveLastDay) { // 注意有等號
    // if (timestamp < nextMonthFirstDay) // 首先這個應(yīng)該是小于下個月的第一天,再者這個判斷沒有必要吧,這個貌似是永遠為true
}
2017年7月6日 17:48
編輯回答
做不到

可以考慮引入moment庫

moment().endOf('month').subtract(5,'days')
2018年5月26日 23:10