JS日期在10月10日(BST)变化



为什么JS日期对象在10月10日更改toutcstring?

new Date('2017-10-9').toUTCString()
"Sun, 08 Oct 2017 23:00:00 GMT"

new Date('2017-10-10').toUTCString()
"Tue, 10 Oct 2017 00:00:00 GMT"

我在英国写这些。BST将于10月29日结束。发生了什么?!

在第一个示例中,日期被解析为本地日期,在第二个示例中为UTC日期。要将第一个日期解析为UTC,请在9之前添加0

console.log(new Date('2017-10-09').toUTCString()); // Mon, 09 Oct 2017 00:00:00 GMT

这样的日期解析的不一致就是为什么您应该始终将ISO-8601格式的日期传递给Date构造函数。您也可以使用库时库。

最新更新