記錄js日期處理的一個坑
當前時區為北美東部時區時,
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月。其他都正常。