我有以下代码让我头晕目眩。
structureOutputDescriptor
今天是8月1日。我点击了var forDt = new Date("2017-07-31"+ "T09:00:00.000");
var workDt = new Date();
workDt.setDate(forDt.getDate() - 1);
date_prev = workDt.toISOString().slice(0, 10);
按钮两次,Prev
从datePrev
更改为July 31
有人可以帮忙告诉我出了什么问题吗?似乎August 30.
设置了setDate()
,但没有更新月份。无论如何要解决它吗?
谢谢你们。=)
答案 0 :(得分:0)
您正在创建new Date()
,因为workDt
将引用系统的当前日期。
var forDt = new Date("2017-07-31" + "T09:00:00.000");
var workDt = new Date(forDt.getTime());
workDt.setDate(forDt.getDate() - 1);
date_prev = workDt.toISOString().slice(0, 10);
console.log(date_prev);
workDt.setDate(workDt.getDate() - 1);
date_prev = workDt.toISOString().slice(0, 10);
console.log(date_prev);
通过使用new Date(forDt.getTime())
设置workDt,您可以复制要减少的日期,并在设置月份的日期之后,您将得到正确的答案