Diskrepanz bei der Datumserstellung mit JavaScript
Im bereitgestellten JavaScript-Code-Snippet wird ein Date-Objekt mit den folgenden Parametern erstellt:
var myDate = new Date(2012, 9, 23, 0,0,0,0);
Bei der Protokollierung des erstellten myDate wird jedoch der Monat Oktober statt September angezeigt. Diese Diskrepanz entsteht durch die unterschiedliche Monatsschreibweise in JavaScript.
In JavaScript stellt der Monatsparameter im Date-Konstruktor den nullbasierten Index der Monate im Bereich von 0 bis 11 dar. Daher ist September Der neunte Monat wird durch den Index 8 dargestellt. Dies erklärt, warum das Code-Snippet ein Date-Objekt mit einem Monatswert von 9 erstellt, was zur Anzeige von führt Oktober.
Die Referenz für den Date-Konstruktor bestätigt dieses Verhalten:
new Date(year, month [, day, hour, minute, second, millisecond]);
Unter dem Monatsparameter heißt es explizit:
Integer value representing the month, beginning with 0 for January to 11 for December.
Daher gilt in JavaScript: Beim Erstellen eines Date-Objekts ist es wichtig zu bedenken, dass Monatsindizes bei 0 beginnen. Daher ist es erforderlich, 1 von der Monatszahl abzuziehen, um den gewünschten Wert zu erhalten Ergebnis.
Das obige ist der detaillierte Inhalt vonWarum zeigt JavaScripts „new Date()' Oktober an, wenn Monat 9 angegeben wird?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!