计算多少天前的具体时间。比如今天是9月5日,那7天前正常就是8月29了。
之前曾经直接用时间进行加减,吃了大亏,后来脑残到直接写了一个很复杂的计算闰年,闰月,30、31、28的月份 现在分享一下。
function InitDateTime(day) { var nowDate = new Date() var agoDate = new Date(nowDate); var nowDay = nowDate.getDate(); var day = -day + nowDay; agoDate.setDate(day); var nowMonth = nowDate.getMonth() + 1; var nowYear = nowDate.getFullYear(); var agoDay = agoDate.getDate(); var agoMonth = agoDate.getMonth() + 1; var agoYear = agoDate.getFullYear(); var dateFrom = (agoYear.toString() + '-' + agoMonth.toString() + '-' + agoDay.toString()); var dateTo = (nowYear.toString() + '-' + nowMonth.toString() + '-' + nowDay); $(':text[name=startDate]').val(dateFrom); //起始时间 $(':text[name=endDate]').val(dateTo); //结束时间 }
调用:
InitDateTime(7) //计算7天前的时间。