【发布时间】:2017-09-15 11:54:09
【问题描述】:
在调试我的应用程序时,我发现了奇怪的事情:
new Date('2017-5-19') -> Fri May 19 2017 00:00:00 GMT+0300 (FLE Summer Time)
new Date('2017-05-19') -> Fri May 19 2017 03:00:00 GMT+0300 (FLE Summer Time)
我从字符串中设置日期,例如'2017-5-19',但是当月份数字前有零时,日期与没有零时不同。
如何通过5 和05 输入获得相同的结果?
附言我必须支持严格模式
【问题讨论】:
-
根据现有的日期逻辑,如果您违反预期的格式,它似乎不会将值从您的 UTC 转换为您的本地时区。所以 '2017-05-19' 是正确的格式 'yyyy-mm-dd' 转换为您当地的时区。这有帮助吗?
-
@PansulBhatt——根据ECMA–262,格式为 YYYY-MM-DD 的日期应被视为 UTC,而不是本地(但当然并非所有使用的浏览器都这样做)。跨度>
标签: javascript date