web-dev-qa-db-fra.com

Formater une chaîne de date en javascript

Bonjour, chaque fois que j'ai un champ de date de type chaîne avec un format iso comme celui-ci: 2017, mais j'ai du mal à atteindre cet objectif ... J'ai coupé la sous-chaîne après le caractère "T"

1
user7334203

Utilisez Moment.js et la fonction .format.

moment('2017-06-10T16:08:00').format('MM/DD/YYYY');

Sortie

06/10/2017

En plus de la fonction formatMoment.js , vous enrichirez des fonctions plus utiles.

9
daan.desmedt

Cela peut être réalisé sans moment.js, mais je vous suggère de l'utiliser

var date = new Date("2017-06-10T16:08:00");

var year = date.getFullYear();
var month = date.getMonth()+1;
var day = date.getDate();

if (day < 10) {
  day = '0' + day;
}
if (month < 10) {
  month = '0' + month;
}

var formattedDate = day + '-' + month + '-' + year
6
Ivan Mladenov

Je voudrais suggérer d'utiliser moment js le trouver - http://momentjs.com/docs/

et l'utiliser comme 

    moment(date.toString()).format("MM/DD/YYYY")
2
Viplock

Si la chaîne de date est toujours au format ISO, vous pouvez également utiliser regex pour reformater sans autre bibliothèque:

date.replace(/(\d{4})\-(\d{2})\-(\d{2}).*/, '$3-$2-$1')
1
micebrain

Utilisation de Date.toJSON()

function formatDate(userDate) {
  // format from M/D/YYYY to YYYYMMDD
  return (new Date(userDate).toJSON().slice(0,10).split('-').reverse().join('-'));
}

console.log(formatDate("2017-06-10T16:08:00"));

1
monikapatelIT

Vous pouvez utiliser la fonction intégrée JavaScript date () pour obtenir des parties de la date/heure que vous souhaitez . Par exemple, pour afficher l'heure est 10h30:

<script>
var date = new Date();
 var min = date.getMinutes();
  var hour = date.getHour();
   document.write(hour+":"+min);
   </script>

Pour obtenir l'année, le mois, la date et le jour de la semaine, utilisez

  • getFullYear (); 

  • getMonth ();

  • avoir un rendez-vous();

  • getDay ();

Pour obtenir la date que vous avez postée:

0
artie