HTML输入日期被“错误地”读回

时间:2019-03-15 17:02:50

标签: javascript html date input timezone

当我输入3/15/2019作为输入日期,然后用console.log(fromDate)读回时间时,我得到Thu Mar 14 2019 19:00:00 GMT-0500 (Central Daylight Time)

为什么不是Fri Mar 15 2019 00:00:00吗?
是因为我的本地计算机上有时间吗?
有没有办法达到期望的输出?

fromDate = new Date(document.getElementById("fromDate").value);

1 个答案:

答案 0 :(得分:1)

发生这种情况是因为new Date将日期视为UTC,所以

var date = new Date('3/15/2019')

创建日期Fri Mar 15 2019 00:00:00。但是,当您打印字符串时,它将考虑您的实际时区,即GTM-0500,因此它将从原始日期删除5个小时,从而产生Thu Mar 14 2019 19:00:00