好的,考虑下面这段代码:
var d1 = new Date();
var d2 = d1;
d2.setDate(d2.getDate()+1);
alert(d1 + "\n" + d2);即使我在d2上调用setDate(),d1也是递增的。我理解这是因为d1是通过引用赋值给d2的。我的问题is...how我是否不这样做,以便.setDate()仅应用于d2
发布于 2012-02-03 09:43:04
在JavaScript中,all objects are assigned to variables 'by reference'。您需要创建对象的副本;Date使其变得很容易:
var d2 = new Date(d1);这将创建一个新的date对象,复制d1的值。
发布于 2012-02-03 09:43:12
发布于 2012-02-03 09:46:57
我认为这应该行得通:
var d1 = new Date();
var d2 = new Date();
d2.setDate(d1.getDate());
d2.setDate(d2.getDate()+1);
alert(d1 + "\n" + d2);https://stackoverflow.com/questions/9122632
复制相似问题