我正在努力争取从今天起90天之后的一天。这是我的代码:
var today = new Date();
var threeMonthsFromToday = new Date(today.setDate(today.getDate() + 90));
当我打印
threeMonthsFromToday
时,我得到正确的日期:2017-04-24T15:17:42.641Z
。但是,当我尝试使用以下代码将日期重新格式化为dd/mm/yyyy
格式时:var day = ('0' + threeMonthsFromToday.getDate()).slice(-2);
var month = ('0' + threeMonthsFromToday.getMonth() + 1).slice(-2);
var year = threeMonthsFromToday.getFullYear();
var date = day + '/' + month + '/' + year;
我得到了一个完全不同且无效的日期:
24/31/2017
。我已经调试了几个小时,但似乎仍然无法弄清我做错了什么。
最佳答案
好吧,'0' + threeMonthsFromToday.getMonth()
给您一个字符串:"03"
然后您将1
转换为字符串,然后在切片前一个月给您"031"
。
用这个 :
var month = ('0' + (threeMonthsFromToday.getMonth() + 1)).slice(-2);