Ich nehme ein Datum von einem JSON-Objekt im Format 2012-12-31 und versuchen, es in freundliche Werte zu konvertieren und es auszugeben.Javascript Datum Objekt Problem in Safari und IE
var redeemableDate = item.Deal.RedeemableDate; //this is coming in the form of 2012-12-31
var redeemableDate = new Date(redeemableDate);
var rdDay = weekday[redeemableDate.getDay()]; //using an array with weekdays
var rdDate = redeemableDate.getDate();
var rdMonth = monthNames[redeemableDate.getMonth()]; //using an array with month names
var rdYear = redeemableDate.getFullYear();
response.write('Valid ' + rdDay + ' ' + rdDate + ' ' + rdMonth + ' ' + rdYear + ' ONLY');
Es funktioniert alles finden und gut in Firefox und Chrome, aber Safari und IE (nur auf IE8 getestet bisher) gefällt mir nicht.
In FF und Chrome ich das erwartet:
Gültig Sonntag 2. September 2012 NUR
Aber in Safari und IE, erhalte ich:
Valid undefined NaN undefined NUR
Wenn ich rot warne Nachdem ich es als Date-Objekt eingerichtet habe, gibt Safari 'Invalid Date' zurück und IE gibt 'NaN' zurück. Dies ist offensichtlich, wo das Problem liegt. Gibt es eine Möglichkeit, wie ich meinen Wert in ein Date-Objekt für diese Browser bringen kann?
einfache und süße Lösung :) –
'var your_date = neues Datum (dateString.split (" - "). Join ("/"));' – jlarson
Guten einen Joe! Ich werde meine Antwort aktualisieren. – jack