我在用Java处理日期方面遇到一些麻烦。

我有一个变量,是firstDay,这是我正在操作的日期。

firstDay中,我从一个变量中添加了X天,而从另一个变量中添加了Y天:

var from_date = new Date(firstDay); // firstDay is a string with date: 2012/07/28
var to_date = new Date(firstDay);

var X = 1;
var Y = 5;

from_date.setDate(from_date.getDate() + X);
to_date.setDate(to_date.getDate() + Y);


因此,from_date现在包含日期29.07.2012,而to_date是02.08.2012。我不知道为什么日期更改正确,但是几个月保持不变。

我在哪里做错了?

最佳答案

复制并粘贴您的代码,它可以按预期工作:http://jsfiddle.net/kDYdW/4/

唯一的区别是firstDay,所以我认为您可能对此有疑问。

您还说“月份保持不变”,但您报告在from_date中使用7月,在to_date中使用6月(29.07.2012和02.06.2012)。

更新:添加了对jsfiddle的正确修订

关于javascript - 使用setDate添加天数后,月数不变,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11700574/

10-13 09:13