【发布时间】:2019-01-03 14:25:17
【问题描述】:
我正在使用以下 JS 来计算今天日期前 X 天。输出似乎工作正常,除了结果不考虑每个月的天数。因此,如果今天是第 26 天,我加上 9 天,则将日期输出为第 35 天,这显然没有意义。
<script>
window.onload=function(){
var dateObj = new Date();
var months = ['January','February','March','April','May','June','July','August','September','October','November','December'];
var month = months[dateObj.getMonth()]; //months from 1-12
var day = dateObj.getUTCDate() +9;
var year = dateObj.getUTCFullYear();
newdate = day + " " + month + " " + year;
document.getElementById("date").innerHTML=(newdate);
}
</script>
如何让它输出准确的日期?
【问题讨论】:
-
使用
setUTCDate()将日期设置为当前值加上您的偏移量,然后在此之后返回月份的日期。它还会更新月份值,因此请在获取月份和年份之前执行此操作。 -
@Pointy 你能用代码告诉我吗?我自己不太擅长 JS,我从其他地方修改了这段代码。谢谢你:)
-
这个应该关闭,已经有many answers,例如How can I add 1 day to current date?
标签: javascript html validation date