js 獲取指定日期上一天及下一天,上一月及下一月
阿新 • • 發佈:2018-12-06
1、獲取指定日期上一天、下一天
function getNextDate(date,day) { var dd = new Date(date); dd.setDate(dd.getDate() + day); var y = dd.getFullYear(); var m = dd.getMonth() + 1 < 10 ? "0" + (dd.getMonth() + 1) : dd.getMonth() + 1; var d = dd.getDate() < 10 ? "0" + dd.getDate() : dd.getDate(); return y + "-" + m + "-" + d; }; //測試 // getNextDate('2018-02-28', 1) // getNextDate('2018-03-01', -1)
2、獲取指定日期上一月
/** * 獲取上一個月 * * @date 格式為yyyy-mm-dd的日期,如:2014-01-25 */ function getPreMonth(date) { var arr = date.split('-'); var year = arr[0]; //獲取當前日期的年份 var month = arr[1]; //獲取當前日期的月份 var day = arr[2]; //獲取當前日期的日 var days = new Date(year, month, 0); days = days.getDate(); //獲取當前日期中月的天數 var year2 = year; var month2 = parseInt(month) - 1; if (month2 == 0) { year2 = parseInt(year2) - 1; month2 = 12; } var day2 = day; var days2 = new Date(year2, month2, 0); days2 = days2.getDate(); if (day2 > days2) { day2 = days2; } if (month2 < 10) { month2 = '0' + month2; } var t2 = year2 + '-' + month2 + '-' + day2; return t2; } //測試 //alert(getPreMonth("2014-01-25"));
3、獲取指定日期下一月
/** * 獲取下一個月 * * @date 格式為yyyy-mm-dd的日期,如:2014-01-25 */ function getNextMonth(date) { var arr = date.split('-'); var year = arr[0]; //獲取當前日期的年份 var month = arr[1]; //獲取當前日期的月份 var day = arr[2]; //獲取當前日期的日 var days = new Date(year, month, 0); days = days.getDate(); //獲取當前日期中的月的天數 var year2 = year; var month2 = parseInt(month) + 1; if (month2 == 13) { year2 = parseInt(year2) + 1; month2 = 1; } var day2 = day; var days2 = new Date(year2, month2, 0); days2 = days2.getDate(); if (day2 > days2) { day2 = days2; } if (month2 < 10) { month2 = '0' + month2; } var t2 = year2 + '-' + month2 + '-' + day2; return t2; } //測試 //alert(getNextMonth("2014-12-25"));