gpt4 book ai didi

javascript - setDate 方法覆盖原始日期

转载 作者:行者123 更新时间:2023-12-02 17:43:17 26 4
gpt4 key购买 nike

我正在使用 javascript setDate 方法进行一些日期操作,因此我的 originalDate 值丢失。这是我正在尝试的:

var originalDate = new Date();
var newDate = originalDate;
newDate.setDate(15);

我希望 setDate() 应该只更新 newDate 变量,而不是原始日期。我怎样才能做到这一点。

谢谢。

最佳答案

您的问题是您将 originalDate 的引用分配给 newDate,因此它们都指向同一个 Date 对象。

另一种可能性:

Javascript

function cloneDate(dateObject) {
return new Date(dateObject.valueOf());
}

var originalDate = new Date(),
newDate = cloneDate(originalDate);

newDate.setDate(15);

console.log(originalDate);
console.log(newDate);

输出

Tue Feb 25 2014 07:13:53 GMT+0100 (CET)Sat Feb 15 2014 07:13:53 GMT+0100 (CET)

关于jsFiddle

这将创建与 originalDate 具有相同值的 newDate,但现在它们是 2 个不同的对象.

关于javascript - setDate 方法覆盖原始日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22005885/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com