为什么Javascript将第3个月变为4月?

时间:2014-08-22 09:45:14

标签: javascript date datetime

现在这看起来很奇怪......

我有一个这样的数组:

a = ["2014", "03", "12", "08", "43", "51"]

我需要转换为DateTime对象。但是:

new Date(a[0], a[1], a[2], a[3], a[4], a[5]);

返回日期{星期六2014年4月12日08:43:51 GMT + 0200(CEST)}

问题
3月发生了什么事?

3 个答案:

答案 0 :(得分:3)

JavaScript使用0作为1月,1作为2月,所以一直到11月为12月。它就像是从0到11的几个月的数组。这就是为什么它将三个转换为四月

答案 1 :(得分:2)

试试这个

a = ["2014", "02", "12", "08", "43", "51"]

我们开始将(only) month计为零。

答案 2 :(得分:2)

出于某种原因,Javascript date中的月份是0到11而不是1到12