This question already has answers here:
In Javascript: Why new Date('2012-1-15') - new Date('2012-01-15') == 21600000
(3个答案)
5年前关闭。
JavaScript中的日期“2015-10-01”和“2015-10-1”有什么区别?
这将返回
返回 在当地时区中的日期 于 UTC的日期
按照MDN docs,如果
有关月份更改的详细说明:(评论)
执行此语句时的
但是,当您执行ojit_code时,输出为'Wed Sep 30 2015 21:00:00 GMT-0300',以UTC时间表示。即比当地时间少3个小时。
因此,这是10月1日午夜-3hrs,也就是前一天的21hrs。即9月30日21小时。
(3个答案)
5年前关闭。
JavaScript中的日期“2015-10-01”和“2015-10-1”有什么区别?
new Date('2015-10-1')
这将返回
'Thu Oct 01 2015 00:00:00 GMT-0300'
new Date('2015-10-01')
返回
'Wed Sep 30 2015 21:00:00 GMT-0300'
最佳答案
我在本地执行后看到的是
按照MDN docs,如果
Date.parse
具有完整的DD
,则new Date('2015-10-1')
将假定日期为UTC格式,否则将采用本地时区格式。有关月份更改的详细说明:(评论)
执行此语句时的
new Date('2015-10-01')
输出为'Thu Oct 01 2015 00:00:00 GMT-0300'。即您的当地时间,即格林尼治标准时间-3hrs。但是,当您执行ojit_code时,输出为'Wed Sep 30 2015 21:00:00 GMT-0300',以UTC时间表示。即比当地时间少3个小时。
因此,这是10月1日午夜-3hrs,也就是前一天的21hrs。即9月30日21小时。