有没有一种简单的方法来获取olain JavaScript日期(例如今天)并返回X天?

例如,如果我想计算今天前5天的日期。


当前回答

函数addDays(date,daysToAdd){var _24HoursIn毫秒=86400000;返回新日期(Date.getTime()+daysToAdd*_24HoursIn毫秒);};var now=新日期();var昨天=addDays(现在,-1);var明天=addDays(现在,1);

其他回答

试试这样的

dateLimit = (curDate, limit) => {
    offset  = curDate.getDate() + limit
    return new Date( curDate.setDate( offset) )
}

currDate可以是任何日期

限制可以是天数的差异(未来为正值,过去为负值)

使用MomentJS。

函数getXDaysBeforeDate(referenceDate,x){return moment(referenceDate).减去(x,'day').格式('MMMM Do YYYY,h:mm:ss a');}var yourDate=新日期();//就说今天吧var valueOfX=7;//假设7天前console.log(getXDaysBeforeDate(yourDate,valueOfX));<script src=“https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.22.2/moment.min.js“></script>

第一个参数是开始日期,第二个参数是您希望增加或减少到该日期的天数

示例(1)-pass-1将日期减少一天

示例(2)-通过1将日期增加一天

const EditDay = (date: Date, num: number): Date => {
 return new Date(date.getTime() + num * 24 * 60 * 60 * 1000)
}

尝试以下操作:

 var d = new Date();
 d.setDate(d.getDate()-5);

注意,这将修改日期对象并返回更新日期的时间值。

var d=新日期();document.write('今天是:'+d.toLocaleString());d.setDate(d.getDate()-5);document.write('<br>5天前是:'+d.toLocaleString());

这将给你最后10天的结果110%工作,你不会得到任何类型的问题

var date = new Date();
var day=date.getDate();
var month=date.getMonth() + 1;
var year=date.getFullYear();
var startDate=day+"/"+month+"/"+year;
var dayBeforeNineDays=moment().subtract(10, 'days').format('DD/MM/YYYY');
startDate=dayBeforeNineDays;
var endDate=day+"/"+month+"/"+year;

你可以根据你的要求改变减去天数