Perché Javascript tratta in modo diverso giorni e mesi?

37

Ho notato che in JavaScript, quando si crea un Date , i mesi sono a base zero e i giorni non lo sono.

Ad esempio:

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

produce il 1 ° febbraio 2012

Perché è questo?

    
posta surfitscrollit 13.12.2012 - 16:00
fonte

2 risposte

46

Molto probabilmente l'idea è che i mesi sono considerati come un indice in una serie di nomi di mesi, mentre i giorni sono semplicemente "contati".

    
risposta data 13.12.2012 - 16:03
fonte
12

Potrebbe anche essere che le date di Javascript dovessero imitare le date di Java. Allo stesso modo, Java ha utilizzato un mese a base zero dall'inizio.

API JDK v1.0.2: Date.getMonth ()

    
risposta data 13.12.2012 - 16:45
fonte

Leggi altre domande sui tag