JS如何设置计算几天前的时间?

  

计算多少天前的具体时间。比如今天是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天前的时间。

原文地址:https://www.cnblogs.com/yangda/p/3958152.html