6
votes

Date de formatage en JavaScript

Je veux de la date avec ce format: '% Y-% M-% DT% H:% M:% s + 0000' . J'ai écrit une fonction mais me demandant toujours s'il n'y a pas de meilleure façon de le faire. Ceci est ma fonction: xxx

n'importe quel idéal sur la façon de faire cela avec moins de code?


4 commentaires

Je recommande d'utiliser une bibliothèque comme un moment.js pour cela.


Je recommande contre moment.js dans ce cas. Votre solution, sans particulièrement jolie (le formatage de la date n'est pas agréable de coder), va être un enfer de beaucoup plus léger que d'importer même une bibliothèque de date légère.


La ligne 3 n'est pas nécessaire


@Virustrinity moment.js est de 20kb. minifiée et gzippée


3 Réponses :


5
votes

Cela peut être fait en une ligne. J'ai fait deux lignes pour le rendre plus simple. Combinez la ligne 2 et 3.

var d = new Date(); 
date = d.toISOString().toString();
var formattedDate = date.substring(0, date.lastIndexOf(".")) + "+0000";
console.log(formattedDate);


0 commentaires

1
votes

Utilisez Moment.js . XXX PRE>

JSBIN P>

P>

<script src="https://cdn.jsdelivr.net/momentjs/2.14.1/moment-with-locales.min.js"></script>


0 commentaires

1
votes
var d = new Date();
var dateString = d.getUTCFullYear() +"-"+ (d.getUTCMonth()+1) +"-"+ d.getUTCDate() + " " + d.getUTCHours() + ":" + d.getUTCMinutes() + ":" + d.getUTCSeconds()+"+0000";
getUTCMonth returns 0 - 11, so want to add one before you convert to string. 

0 commentaires