我正在创建一个新的Date对象,如下所示:
new Date(1951, 3, 1, 0, 0, 0, 0);
Run Code Online (Sandbox Code Playgroud)
1951年4月1日星期日,格林尼治标准时间+0300
如您所见,我希望小时数为“ 0”,而改为“ 1”。
我知道Date对象受时区影响,但是如果执行此操作:
a = new Date(1951, 3, 2, 0, 0, 0, 0)
Run Code Online (Sandbox Code Playgroud)
1951年4月2日星期一00:00:00 GMT + 0300
时区保持不变,但是现在日期中的小时部分似乎没问题。
我希望对此行为做出解释。
如您所见,我希望小时数为“ 0”,而改为“ 1”。我知道Date对象受到时区的困扰,但是如果我这样做的话:
时区保持不变,但是现在日期中的小时部分似乎没问题。
很想对此行为做出解释。
好的,我找到了这种行为的原因 - 它是 Date 对象的 js 规范的一部分,您可以在此处阅读更多信息https://codeofmatt.com/javascript-date-type-is-horribly-broken/
| 归档时间: |
|
| 查看次数: |
84 次 |
| 最近记录: |