我需要能够添加1,2,5或10天到今天的日期使用jQuery。


当前回答

Krishna Chytanya的原型解决方案非常好,但需要一个微小但重要的改进。 days参数必须解析为Integer,以避免当days是“1”这样的字符串时进行奇怪的计算。(我花了好几个小时才弄清楚我的申请出了什么问题。)

Date.prototype.addDays = function(days) {
    this.setDate(this.getDate() + parseInt(days));
    return this;
};

即使你不使用这个原型函数: 当使用setDate()时,一定要确保有一个Integer。

其他回答

为什么不简单地使用

function addDays(theDate, days) {
    return new Date(theDate.getTime() + days*24*60*60*1000);
}

var newDate = addDays(new Date(), 5);

或者-5减去5天

这是5天:

var myDate = new Date(new Date().getTime()+(5*24*60*60*1000));

你不需要JQuery,你可以用JavaScript来做,希望你得到它。

如果不需要Date中的时间,那么您可以简单地使用Date对象的方法提取月、年和日,并在Day部分添加“n”天。

var n=5; //number of days to add. 
var today=new Date(); //Today's Date
var requiredDate=new Date(today.getFullYear(),today.getMonth(),today.getDate()+n)

参考:Mozilla Javascript GetDate

编辑:参考:Mozilla JavaScript日期

纯JS解决方案,具有日期格式YYYY-mm-dd格式

var someDate = new Date('2014-05-14'); someDate.setDate(someDate.getDate() + 15);//要加的天数,例如15天 var dateformatting = someDate.toISOString().substr(0,10); console.log (dateformat);

你可以尝试这个,不需要JQuery: timeSolver.js

例如,今天加上5天:

var newDay = timeSolver.add(new Date(),5,"day");

你也可以按小时、月等添加。 请查看更多信息。