为什么新的Date('2020-06-16')获得6/15?

时间:2020-06-20 12:50:06

标签: javascript date

如果您在控制台中执行此操作

new Date('2020-06-16')

你会得到

2020年6月15日星期一20:00:00 GMT-0400(东部夏令时间)

这是为什么?

1 个答案:

答案 0 :(得分:0)

new Date()为UTC(+0000时区)生成unix时间戳,然后字符串显示为您提供本地时区中的该时间戳。 EST是一个负时区,因此UTC发生在午夜之前,好像您仍在前一天一样。

new Date('2020-06-16')
Tue Jun 16 2020 01:00:00 GMT+0100 (British Summer Time)

如果要指定本地午夜而不是全局午夜,则可以在日期中添加时区。

new Date('2020-06-16:00:00:00-4000')
Wed Jun 17 2020 17:00:00 GMT+0100 (British Summer Time) {}