58

使用 Mozilla Firefox Firebug:

var myDate = new Date(2012, 9, 23, 0,0,0,0);
myDate;

日期 {2012 年 10 月 23 日星期二 00:00:00 GMT-0400(东部夏令时间)}

为什么javascript会创建错误月份的日期?

4

3 回答 3

103

不,javascript 的Date月份以 开头0,第 10 个月也是如此9,现在是 10 月

参考

new Date(year, month [, day, hour, minute, second, millisecond]);

[...]

month 表示月份的整数值,从 0 开始表示 1 月到 11 表示 12 月。

于 2012-09-03T21:45:04.390 回答
9

在 javascript 世界中,月份从零开始!对我来说有点奇怪。无论如何,9 不是九月,而是 9 是十月。

于 2012-09-03T21:57:38.120 回答
1

使用字符串作为参数来避免 Date 构造函数的奇怪行为。

例子:

const myDate = new Date('2021-08-13'); // Result: Fri Aug 13 2021 02:00:00 GMT+0200...

于 2021-10-11T12:26:31.017 回答