【问题标题】:while implementing Dates in Javascript dates getting changed [duplicate]在 Javascript 中实现 Date 日期发生变化时 [重复]
【发布时间】:2021-03-16 07:29:58
【问题描述】:

我试图从给出日期中减去 5 天,但是当我这样做时,它也会按原始日期更改。我不明白为什么会这样。请看下面我的代码。

var HARVESTDATE= new Date("2021-02-16T05:00:00.000Z");
console.log('HARVESTDATEdate', HARVESTDATE);//2021-02-16T05:00:00.000Z

let rangeDate = HARVESTDATE;
rangeDate.setDate(rangeDate.getDate() - 5);
console.log('rangeDate', rangeDate);//2021-02-11T05:00:00.000Z
console.log('HARVESTDATE', HARVESTDATE);//2021-02-11T05:00:00.000Z

在上面的代码中,我将日期指定为 2021-02-16T05:00:00.000Z,我希望将 5 天后的日期指定为 2021-02-11T05:00:00.000Z,它分配给变量 rangeDate 但是当它这样做时,它会更改我的 HARVESTDATE,这也是我不想改变。有人可以帮我解决什么问题吗? 谢谢

【问题讨论】:

    标签: javascript


    【解决方案1】:
    let rangeDate = HARVESTDATE;
    

    rangeDate 和 HARVESTDATE 是同一个对象。
    如果你修改 rangeDate,HARVESTDATE 也会改变。

    你需要做的是:

    let rangeDate = new Date(HARVESTDATE);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-01-13
      • 1970-01-01
      • 2023-03-19
      • 1970-01-01
      • 2017-02-19
      • 2015-11-24
      • 2020-01-03
      • 2021-07-27
      相关资源
      最近更新 更多