2016-04-07 12 views
1

Ich habe ein Datum wie folgt aus:Javascript Datum Zeichenfolge falsch Monat Kommissionierung bis

Mi 6. April 2016 12.21.07 GMT + 0530 (Indien Standard Time)

muss ich den Monat aus diesem Datum heraus. Mein Code ist:

dateText= "Wed Apr 06 2016 12:21:07 GMT+0530 (India Standard Time)" 
var x = new Date(dateText); 
var y = x.getMonth(); 
console.log(y) 

der Wert von y kommt 3. Aber im Idealfall zu sein, sollte es bereits 4 (seit dem Monat April). Die Alternative, die ich gedacht habe von ist die dateText von Raum zu spalten heißt

arrDate = dateText.toString.split(" ");) 

und dann den Monat aus arrDate Array zu extrahieren.

Kann mir jemand sagen, warum Javascript "3" anstelle von "4" in meinem ersten Code oben zeigt?

+3

Vielleicht lesen Sie die Dokumentation von getMonth zurückkehren wird? ;-) – trincot

+0

die hier https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Date/getMonth – Liam

+0

Danke für die Hilfe. Ich habe getMonth von Null an vergessen. –

Antwort

3

DATE_OBJECT.getMonth() ist Null basiert. (0 für Januar und 11 für Dezember).

Sie tun müssen, um var y = x.getMonth() + 1;

Siehe Dokumentation: http://www.w3schools.com/jsref/jsref_getmonth.asp

+2

Oder die bessere Dokumentation hier https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Date/getMonth – Liam

1

getMonth startet von Null

dateText= "Wed Apr 06 2016 12:21:07 GMT+0530 (India Standard Time)" 
var x = new Date(dateText); 
var y = x.getMonth() + 1; 
console.log(y) 
-1

Dies liegt daran, die getDate() Funktion einen Wert von 0 bis 11 zurück, so dass, wenn Sie versuchen, den 4. Monat, um es 3.

Verwandte Themen