J'ai une chaîne de date "Sunday, February 28, 2010" que je voudrais convertir en un objet date js formaté @ MM/DD/YYYY mais je ne sais pas comment. Avez-vous des suggestions ?
Réponses
Trop de publicités?Si vous utilisez jQuery, vous pouvez utiliser la fonction parseDate de la bibliothèque UI datepicker pour convertir votre chaîne en date :
var d = $.datepicker.parseDate("DD, MM dd, yy", "Sunday, February 28, 2010");
puis utilisez la méthode formatDate pour obtenir le format de chaîne de caractères que vous souhaitez.
var datestrInNewFormat = $.datepicker.formatDate( "mm/dd/yy", d);
Si vous ne travaillez pas avec jQuery, bien sûr, ce n'est probablement pas le meilleur plan, car vous aurez besoin de jQuery core ainsi que du module d'interface utilisateur de datepicker... Le mieux est de suivre la suggestion de Segfault ci-dessus d'utiliser date.js.
HTH
Si vous n'en avez besoin qu'une fois, il est inutile de charger un plugin.
Pour une date "jj/mm/aaaa", cela fonctionne pour moi :
new Date(d.date.substring(6, 10),d.date.substring(3, 5)-1,d.date.substring(0, 2));
Il suffit d'inverser le mois et le jour pour obtenir mm/dd/yyyy, la syntaxe est la suivante
new Date(y,m,d)
J'ai utilisé la fonction javascript de date toLocaleDateString pour obtenir
var Today = new Date();
var r = Today.toLocaleDateString();
Le résultat de r sera
11/29/2016
Plus d'informations sur le site : http://www.w3schools.com/jsref/jsref_tolocaledatestring.asp
var stringDate = "Sunday, February 28, 2010";
var months = ["January", "February", "March"]; // You add the rest :-)
var m = /(\w+) (\d+), (\d+)/.exec(stringDate);
var date = new Date(+m[3], months.indexOf(m[1]), +m[2]);
El indexOf
sur les tableaux n'est prise en charge que par les navigateurs les plus récents (c'est-à-dire pas IE). Vous devrez effectuer la recherche vous-même ou utiliser l'une des nombreuses bibliothèques qui offrent la même fonctionnalité.
Le code ne comporte pas non plus de vérification des erreurs, ce qui devrait être ajouté. (chaîne ne correspondant pas à l'expression régulière, mois inexistants, etc.)
- Réponses précédentes
- Plus de réponses