如何使用javascript显示/打印当前日期和下一个日期

时间:2014-05-05 07:15:00

标签: javascript

我有一个表单,我需要通过使用javaScript分别获取当前日期和下一个日期来进行一些验证。

我尝试了这段代码,但无法正常使用。

var currentDate = new Date();//get current date

var validdate=currentDate;
validdate.setDate(validdate.getDate()+1);

但是,当有效日期更改为+1时,会发生当前日期也会更改为+1。

但是我需要单独使用它,意味着当我打印输出时:我得到了

currentDate = 5th May 2014;

validdate = 6th May 2014;

然后,当我再次打印currentDate时,它会变为“2014年5月6日”。

如何在不相互影响的情况下获取当前日期和下一个日期?

4 个答案:

答案 0 :(得分:3)

而不是validdate = currentDate;尝试validdate = new Date();

您的问题发生是因为在javascript中,当您将对象传递给某个值时,它会通过引用传递 而不是传递值。因此,当您更改它时,您甚至可以更改原始对象,因为您实际上没有两个不同的对象。

答案 1 :(得分:2)

您指的是currentDatevaliddate的相同对象实例。

单独初始化它们,如下所示

currentDate = new Date();

validdate = new Date();

还将validdate重命名为validDate以提高可读性。

答案 2 :(得分:1)

使用以下代码

创建Date对象的新副本
var validdate = new Date(currentDate.getTime());

现在修改validdate对象时,它不会更新currentDate

答案 3 :(得分:0)

试试这个

var currentDate = new Date();//get current date
alert(currentDate.toString());
var validdate=new Date(); 
validdate.setDate(currentDate.getDate()+1);
alert(validdate.toString());
alert(currentDate.toString());