it-swarm.com.de

Warum behandelt Javascript Tage und Monate unterschiedlich?

Ich habe festgestellt, dass in JavaScript beim Erstellen eines Date Monate auf Null basieren und Tage nicht.

Zum Beispiel:

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

produziert am 1. Februar 2012

Warum ist das?

44
surfitscrollit

Die Idee ist höchstwahrscheinlich, dass die Monate als Index für eine Reihe von Monatsnamen betrachtet werden, während Tage einfach "gezählt" werden.

51

Es kann auch sein, dass Javascript-Daten dazu gedacht waren, Java Datumsangaben. Java hat in ähnlicher Weise von Anfang an einen auf Null basierenden Monat verwendet) nachzuahmen.

JDK API v1.0.2: Date.getMonth ()

14