web-dev-qa-db-fra.com

Pourquoi Javascript traite-t-il les jours et les mois différemment?

J'ai remarqué qu'en JavaScript, lors de la création d'un Date, les mois sont basés sur zéro et les jours ne le sont pas.

Par exemple:

var foo = new Date(2012, 1, 1)

produit le 1er février 2012

Pourquoi est-ce?

44
surfitscrollit

L'idée est très probablement que les mois sont considérés comme un index dans un tableau de noms de mois, tandis que les jours sont simplement "comptés".

51
thorsten müller

Il se peut également que les dates Javascript soient censées imiter Java dates. Java a également utilisé un mois de base zéro depuis le début).

API JDK v1.0.2: Date.getMonth ()

14
Danny Kirchmeier