Le Format de la date et de Soustraire des jours à l'aide de Moment.js
Je voudrais une variable pour contenir la date d'hier dans le format DD-MM-YYYY
à l'aide de Moment.js. Donc, si aujourd'hui est 15-04-2015, je voudrais retrancher un jour et ont 14-4-2015.
J'ai essayé quelques combinaisons comme ceci:
startdate = moment().format('DD-MM-YYYY');
startdate.subtract(1, 'd');
et ce:
startdate = moment().format('DD-MM-YYYY').subtract(1, 'd');
et également ceci:
startdate = moment();
startdate.subtract(1, 'd');
startdate.format('DD-MM-YYYY')
Mais je ne suis pas à l'obtenir...
- Avez-vous essayé soustrayant avant le formatage? Mise en forme qu'il vous donne juste un string...
- moment().soustraire(10, "jours") au lieu de "d" peut-être?
- "Tenir" la date d'hier comme un date, et de le transformer en une chaîne formatée, lorsque vous avez besoin de l'afficher.
- j'ai fait une erreur dans cette question la dernière tentative devrait dire startdate = moment(); dans la première ligne. Ive a édité maintenant merci
format()
est la fonction qui rend une chaîne de caractères. Vous devriez le faire en dernier.- Votre troisième exemple qui fonctionne pour moi mais je suis sur
v2.7.0
.
Vous devez vous connecter pour publier un commentaire.
Vous avez plusieurs bizarreries qui se passe. Le premier a été édité dans ton post, mais il avait à faire avec l'ordre que les méthodes ont été appelés.
.format
retourne une chaîne de caractères. Chaîne de ne pas avoir unsubtract
méthode.Le deuxième problème est que vous êtes en soustrayant la journée, mais pas réellement d'économie que comme une variable.
Votre code, alors, devrait ressembler à:
Cependant, vous pouvez la chaîne de cet ensemble, ce qui ressemblerait à:
La différence est que nous sommes réglage de la date de début pour les modifications que vous faites sur startdate, car l'instant est destructeur.
subtract
est, en fait, destructrice. "Mutation de l'original moment en soustrayant le temps". Voir ici: momentjs.com/docs/#/manipulating/subtractEssayez ceci:
Cela vous donnera
14-04-2015
- aujourd'hui est 15-04-2015Sinon, si votre momentjs version est inférieure à 2.8.0, vous pouvez utiliser:
Au lieu de cela:
Je pense que vous l'avez obtenu dans cette dernière tentative, il vous suffit de saisir la chaîne.. dans google Chrome, la console..
startdate = moment().subtract(1, 'days').startOf('day')
Dans angularjs moment="^1.3.0"
Maintenant, vous pouvez formater la façon dont vous voulez voir cette date ou vous pouvez comparer cette date avec une autre etc.
à jour() fonction est le point.