Ho notato che in JavaScript, durante la creazione di Date
, i mesi sono a base zero e i giorni no.
Per esempio:
var foo = new Date(2012, 1, 1)
produce il 1 ° febbraio 2012
Perchè è questo?
Ho notato che in JavaScript, durante la creazione di Date
, i mesi sono a base zero e i giorni no.
Per esempio:
var foo = new Date(2012, 1, 1)
produce il 1 ° febbraio 2012
Perchè è questo?
Risposte:
Molto probabilmente l'idea è che i mesi siano pensati come un indice in una matrice di nomi di mesi, mentre i giorni vengono semplicemente "contati".
new Date().getTime()
Può anche darsi che le date Javascript fossero destinate a imitare le date Java. Allo stesso modo Java ha usato un mese in base zero dall'inizio.
months = ['Jan', 'Feb',..., 'Nov', 'Dec']; month = months[date.getMonth()];