js 日期自动+1问题

发布于 2020-02-10  80 次阅读


当前时区为北美东部时区时,
new Date('2019-4-1')
new Date('2019-04-01')
结果是相关一个月的。

new Date('2019-04-01')
得到的日期居然是上个月
2019-03-31 20:00:00

new Date('2019-04-01'),实际对应的时间是2019-04-01 00:00:00 0时区。
然后转换为本地-4时区,就出现2019-03-31 20:00:00
得到的月份自然是上个月。

正确的做法
new Date('2019-4-1')
new Date(2019,3,1,0,0,0)
注意new Date(year,mon,day,hour,min,sec)中,mon月份是从0开始的,0表示1月,11表示12月。其他都正常。


华风夏韵,洛水天依。