Date.getMonth()的奇怪行为 - 月差异

时间:2017-08-24 08:20:28

标签: javascript date

在一个项目中,我需要将javascript中的时间戳转换为人类可读的字符串,但月份的数量不正确,所以我在javascript控制台中执行了以下测试:

Image of my test

如何解释为何有一个月的差异?

提前谢谢

4 个答案:

答案 0 :(得分:4)

Javascript日期从0开始持续数月

示例:

  • 0:Jan
  • 1:Feb
  • 2:Mar

答案 1 :(得分:3)

在javascript月份从0开始。所以1月是0,12月是11

答案 2 :(得分:3)

docs

  

返回值一个整数,介于0和11之间,表示   根据当地时间在给定日期的月份。 0对应于   1月1日至2月,依此类推。

答案 3 :(得分:3)

Javascript的date.getMonth从0开始计算月份。因此您需要添加+1。

var date = new Date();
console.log(date.getMonth() + 1);