0

我正在尝试使用来自另一个 JS 对象的日期在 JS 中初始化一个 var,但是无论我试图获取对旧对象(指针)的引用,我都需要它不要更改。

var lastActionDate = new Date(mainLastActionDate);
var nowDate = new Date();
var tmpLastActionDate = lastActionDate;

if ((tmpLastActionDate.setDate(tmpLastActionDate.getDate() + 7)) > nowDate)

最后一行是有问题的行。我认为不应更改 lastActionDate 并且我需要它保留旧日期,但它会随着 tmpLastActionDate 而更改,我猜是因为它是一个指针。

如何通过值而不是引用来设置日期对象?

4

2 回答 2

2

试试这个 :

d=new Date()
e=new Date(d.valueOf())
于 2012-04-10T08:24:30.613 回答
1

您必须克隆原始 Date 对象。您可以使用此方法:

var date = new Date();
var copiedDate = new Date(date.getTime());

参考:如何在 JavaScript 中克隆 Date 对象

于 2012-04-10T08:25:30.470 回答