js日期增加或減少一天
阿新 • • 發佈:2018-03-13
ole blog light 組合 ret rtt 閏年的判斷 script star
想自己寫一個日期的加減方法,但是涉及到每個月天數的判斷,如果是2月份的話,還要涉及到閏年的判斷,有些復雜,其實只要調用Date對象的setDate()函數就可以了,具體方法如下:
function addDate(date,days){ var d=new Date(date); d.setDate(d.getDate()+days); var month=d.getMonth()+1; var day = d.getDate(); if(month<10){ month = "0"+month; } if(day<10){ day = "0"+day; } var val = d.getFullYear()+""+month+""+day; return val; }
$("#loadSource").bind("click", function(e) { //alert("sssss"); var startTime = $("#start").val(); var endTime = $("#end").val(); endTime = addDate(endTime,1); //console.log(endTime); $(this).find("a").attr("href", "../../api/count/exportResourceExcel?startTime=" + startTime + "&endTime=" + endTime + ""); //$(this).find("a").trigger("click"); });
其中,date參數是要進行加減的日期,格式YYYY-MM-DD,days參數是要加減的天數,如果往前算就傳入負數,往後算就傳入正數,如果是要進行月份的加減,就調用setMonth()和getMonth()就可以了,需要註意的是返回的月份是從0開始計算的,也就是說返回的月份要比實際月份少一個月,因此要相應的加上1。
特別:註意年月日組合的時候,不能直接+,會當做int類型求和,要轉換成字符串。
js日期增加或減少一天