【发布时间】:2018-12-05 19:38:19
【问题描述】:
我有 2 个日期,我需要使用这 2 个日期创建第三个日期。
if (document.getElementById("endDate"))
endDate = document.getElementById("endDate").value;
if (document.getElementById("presentDate"))
presentDate = document.getElementById("presentDate").value;
如果Present date = "12/5/2018" 和End date = "12/25/2018" 那么我的New date = "12/26/2018";
由于 JavaScript 日期月份的范围是 0-11,而且日期有点乱,我没有得到想要的结果。
我尝试了什么:
var presentDt = new Date(presentDate);
var endDt = new Date(endDate);
var newDay = endDt.getUTCDate()+1;
var presentMonth = presentDt.getUTCMonth();
var presentYear = presentDt.getUTCFullYear();
var nextDate= presentMonth + '/' + endDay + '/' + presentYear;
问题 1:上面的代码有效,但如果我的
endDate是 31 日,则添加UTCDate+1使其成为 32,这将返回无效日期。问题 2:如果我执行
UTCMonth(),它会返回 11,但如果我想添加 2 个月,那么它会返回 13,这也是无效的。问题基本上是我无法随心所欲地操纵日期。
我也试过了,但是我遇到了类似的问题,我无法按照我的意愿轻松地操纵日期。
也尝试过getDate 和getMonth,但效果相同。
有没有更好的方法来使用 JavaScript 处理整个日期/时间?
【问题讨论】:
标签: javascript datetime momentjs