Je peux obtenir la différence entre deux dates en utilisant MomentJs comme suit:
moment(end.diff(startTime)).format("m[m] s[s]")
Cependant, je souhaite également afficher l'heure le cas échéant (uniquement lorsque> = 60 minutes se sont écoulées).
Cependant, lorsque j'essaie de récupérer les heures de durée en utilisant ce qui suit:
var duration = moment.duration(end.diff(startTime));
var hours = duration.hours();
il renvoie l'heure actuelle et non le nombre d'heures entre les deux dates.
Comment puis-je obtenir la différence d'heures entre deux moments?
javascript
date
momentjs
Dani
la source
la source
startTime.diff(end, 'hours', true);
? La durée en heures (); retournerait 1 si c'était il y a 25 heures..diff()
, oui. Sauf que ce seraitend.diff(startTime, 'hours', true)
d'obtenir le nombre d'heures comme un nombre positif. Cependant, votre deuxième point n'est pas correct.duration.hours()
retournerait 1 si c'était il y a 25 heures, maisduration.asHours()
reviendrait 25..hours()
méthode sans m'en rendre compte.Le bloc de code suivant montre comment calculer la différence de nombre de jours entre deux dates à l'aide de MomentJS.
la source
var now = moment();
. Voir momentjs.com/docs/#/parsing/nowOu vous pouvez faire simplement:
docs: ici
la source
Tout ce que vous avez à faire est de passer en
hours
tant que deuxième paramètre à la fonction de différence des moments.Documents: https://momentjs.com/docs/#/displaying/difference/
Exemple:
la source
Il existe une excellente
moment
méthode appeléefromNow()
qui retournera l'heure à partir d'une heure spécifique sous une belle forme lisible par l'homme, comme ceci:Ou si vous le souhaitez entre deux dates spécifiques, vous pouvez utiliser:
Tiré des documents:
fromNow()
from()
la source
Je sais que c'est vieux, mais voici une solution à un revêtement:
Où début et fin sont des objets moments.
Prendre plaisir!
la source
Comme vous pouvez le voir, les dates de début et de fin devaient être des objets de moment pour que cette méthode fonctionne.
la source
la source
Dans mon cas, je voulais des heures et des minutes:
Pour plus d'informations, reportez-vous aux documents officiels .
la source
Si vous voulez un total de minutes entre deux dates par jour que mai ci-dessous, le code vous aidera pleinement Date de début: 2018-05-04 02:08:05 , date de fin: 2018-05-14 09:04:07 ...
la source
Je sais que cela a déjà été répondu, mais au cas où vous voudriez quelque chose de récursif et plus générique et ne comptant pas sur le moment,
fromNow
vous pourriez utiliser cette fonction que j'ai créée. Bien sûr, vous pouvez modifier sa logique pour l'adapter à vos besoins afin de prendre également en charge des années et des secondes.la source
la source