新的Date()函数无法正常工作

时间:2012-10-20 21:11:57

标签: javascript google-apps-script

有没有人知道为什么

new Date('2012','1','1')

返回2012年2月1日而不是1月1日?

new Date('2012','0','1')

将于2012年1月1日返回

这是奇怪还是合乎逻辑?

2 个答案:

答案 0 :(得分:6)

因为这正是ECMAscript规范(第3版)第15.9.1.4节所说的应该发生的事情。 0 = 1月1日= 2月,... 11 = 12月。

http://www.ecma-international.org/publications/standards/Ecma-262.htm

答案 1 :(得分:1)

请花点时间阅读下面的JavaScript日期文件: https://www.w3schools.com/js/js_dates.asp

它注意到:

  

JavaScript从0到11计算月份.1月是0. 12月是11。

所以你得到的结果绝对正确。