如何在jquery中从这个日期减去一周?

时间:2011-12-13 12:47:10

标签: javascript jquery

这是我的代码

var myDate = new Date();
todaysDate = ((myDate.getDate()) + '/' + (myDate.getMonth()) + '/' + (myDate.getFullYear()));
$('#txtEndDate').val(todaysDate);

我需要txtEndDate的值=今天的日期 - 一周

5 个答案:

答案 0 :(得分:153)

您可以使用setDate修改日期。它会自动更正转换到新月/年等。

var oneWeekAgo = new Date();
oneWeekAgo.setDate(oneWeekAgo.getDate() - 7);

然后继续将日期呈现为您喜欢的任何事物的字符串。

答案 1 :(得分:18)

我会做类似

的事情
var myDate = new Date();
var newDate = new Date(myDate.getTime() - (60*60*24*7*1000));

答案 2 :(得分:8)

var now = new Date();
now.setDate(now.getDate() - 7); // add -7 days to your date variable 
alert(now); 

答案 3 :(得分:1)

查看Date.js.真的很整洁!

http://www.datejs.com/

以下是使用Date.js执行此操作的几种方法:

// today - 7 days
// toString() is just to print it to the console all pretty

Date.parse("t - 7 d").toString("MM-dd-yyyy");     // outputs "12-06-2011"
Date.today().addDays(-7).toString("MM-dd-yyyy");  // outputs "12-06-2011"
Date.today().addWeeks(-1).toString("MM-dd-yyyy"); // outputs "12-06-2011"

作为一个不相关的旁注,请查看Moment.js ......我认为这两个图书馆相互补充:)

http://momentjs.com/

答案 4 :(得分:-1)

内联

new Date(new Date().setDate(new Date().getDate() - 7))

它的@David Hedlund回答,我只是将其内联