3

对于日期选择器,我需要两个日期:从:今天 - 7 天,到:今天 + 7 天。

我得到一个 currentDate :

  var toDay = new Date();
  var curr_date = toDay.getDate();
  var curr_month = toDay.getMonth();
  curr_month++;
  var curr_year = toDay.getFullYear();
  var toDay = (curr_month + "/" + curr_date + "/" + curr_year);

如何获取7 days+7 days-约会?对应月份!

4

5 回答 5

3

你可以简单地这样做

var myDate = new Date();
myDate.setDate(myDate.getDate() + 7);
console.log(myDate)

演示

编辑

根据评论,您可以使用以下代码

var myDate = new Date();
myDate.setDate(myDate.getDate() + 7);
var nextWeekDate = ((myDate.getMonth() + 1) + "/" + myDate.getDate() + "/" + myDate.getFullYear());

myDate = new Date();
myDate.setDate(myDate.getDate() -7 );
var prevWeekDate = ((myDate.getMonth() + 1) + "/" + myDate.getDate() + "/" + myDate.getFullYear());

修改后的演示

于 2013-10-31T13:38:08.717 回答
2

很简单:

nextWeek.setDate(toDay.getDate() + 7);
lastWeek.setDate(toDay.getDate() - 7);
于 2013-10-31T13:37:45.730 回答
1

你也可以javascript Date像这样扩展你的对象

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

Date.prototype.substractDays = function(days) {
    this.setDate(this.getDate() - days);
    return this;
};

     //then
var dateDiff=7;
var toDay = new Date();
var futureDay= new Date(toDay.addDays(dateDiff));
var prevDay = new Date(toDay.substractDays(dateDiff*2)); // substracted 14 daysbecause 'toDay' value has been incresed by 7 days

希望这可以帮助。

于 2013-10-31T13:50:18.227 回答
0

Javascript 将日期保存为自 1970 年 1 月 1 日午夜以来的毫秒数。您可以通过在 Date 对象上调用“getTime()”来获取此时间。然后,您可以添加 7X24X60X60X1000 以在 7 天后得到,或者将它们减去 7 天前的毫秒数。然后再次调用 Date.setTime()。

编辑:当您在一个月的开始或结束时,这两种涉及 getDate() 的其他方法都会变得不可预测。

于 2013-10-31T13:39:43.980 回答
0

您可以像下面这样添加/减去

var fdate= new Date();
var numberofdayes= 7;
fdate.setDate(fdate.getDate() + numberofdayes); 

(不知道你是不是在问这个)

然后,您可以使用 getDate()、getMonth() 和 getFullYear() 将其格式化为 dd/mm/yyyy。(别忘了加 1 到fdate.getMonth()

var formateddate = fdate.getDate()+ '/'+ fdate.getMonth()+1 + '/'+ fdate.getFullYear();
于 2013-10-31T13:40:30.150 回答