Je reçois une date au format GMT, le vendredi 18 octobre 2013 11h38:23 GMT. Le problème est que le temps gâche le calendrier que j'utilise.
Comment puis-je tout effacer sauf la date réelle?
Comme ça:
var dateString = 'Mon Jan 12 00:00:00 GMT 2015';
dateString = new Date(dateString).toUTCString();
dateString = dateString.split(' ').slice(0, 4).join(' ');
console.log(dateString);
Si vous voulez continuer à utiliser Date et non String, vous pouvez le faire:
var d=new Date(); //your date object
console.log(new Date(d.setHours(0,0,0,0)));
-PS, vous n'avez pas besoin d'un nouvel objet Date, c'est juste un exemple dans le cas où vous voudriez le connecter à la console.
J'utilise cette solution de contournement:
// d being your current date with wrong times
new Date(d.getFullYear(), d.getMonth(), d.getDate())
Il suffit de le couper avec substring
:
var str = 'Fri, 18 Oct 2013 11:38:23 GMT';
str = str.substring(0,tomorrow.toLocaleString().indexOf(':')-3);
Dans ce cas, vous pouvez simplement manipuler votre chaîne sans utiliser un objet Date
.
var dateTime = 'Fri, 18 Oct 2013 11:38:23 GMT',
date = dateTime.split(' ', 4).join(' ');
document.body.appendChild(document.createTextNode(date));
Vous pouvez d’abord convertir la date en chaîne:
String dateString = String.valueOf (date);
Puis appliquez substring à la chaîne:
chaîne de dateString (4, 11) + chaîne de dateString (30);
Vous devez faire attention car la conversion de la date en chaîne modifiera également le format de la date.