为什么getMonth()以0开头


10

我正在编写一个函数以从javascript中的日期值中删除一天,而javascript的getMonth()从1月的0开始到12月的11开始让我感到有些惊讶。为什么javascript的getMonth()以0开头?


4
因为C就是struct tm这样做的。
Paul Tomblin

2
好,让我问一个更普遍的问题。为什么要编写一个日期对象,该对象具有基于0的索引的月而不是基于天,年,小时,分钟等的索引?
松饼人2012年

Answers:



1

最有可能是因为调用C库调用来获取要返回的值,所以以这种方式返回数月。

(这种设计的原因很可能是因为库调用是与程序一起设计的,用于实际打印日期,从零开始的索引可以直接用于打印月份名称)


1

如果结构中的一个元素以0开头,那么所有元素也应以0开头,或者都不选择任何一个。我在网站上发现这种行为有点晚了。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.