当天开始的几天前几天后
//获取最近7天日期 getDay(0);//当天日期 getDay(-7);//7天前日期 //获取最近3天日期 getDay(0);//当天日期 getDay(-3);//3天前日期 function getDay(day){ var today = new Date(); var targetday_milliseconds=today.getTime() + 1000*60*60*24*day; today.setTime(targetday_milliseconds); //注意,这行是关键代码 var tYear = today.getFullYear(); var tMonth = today.getMonth(); var tDate = today.getDate(); tMonth = doHandleMonth(tMonth + 1); tDate = doHandleMonth(tDate); return tYear+"-"+tMonth+"-"+tDate; } function doHandleMonth(month){ var m = month; if(month.toString().length == 1){ m = "0" + month; } return m; }获取指定日期的几天前几天后日期
第一种方法
/** * 几天前或者后的时间 * @param definedTime * @param days */ function getDaysAfter(definedTime, days) { const milliseconds = 1000 * 60 * 60 * 24 * days; const afterTime = new Date(definedTime).getTime() + milliseconds; let dateObj = new Date(afterTime); return dateObj.getMonth() + 1 + '月' + dateObj.getDate() + '日'; } //7天后 getDaysAfter(2020-6-30,7)第二种方法
getDay(7);//7天后日期 function getDay(day){ var today = new Date(); // 也很简单 var strtime = '2020-06-30 18:55:49:123'; var date = new Date(strtime); //传入一个时间格式,如果不传入就是获取现在的时间了,这样做不兼容火狐。 time2 = date.valueOf(); var targetday_milliseconds=time2 + 1000*60*60*24*day; today.setTime(targetday_milliseconds); //注意,这行是关键代码 var tYear = today.getFullYear(); var tMonth = today.getMonth(); var tDate = today.getDate(); tMonth = doHandleMonth(tMonth + 1); tDate = doHandleMonth(tDate); return tYear+"-"+tMonth+"-"+tDate; } function doHandleMonth(month){ var m = month; if(month.toString().length == 1){ m = "0" + month; } return m; }