moment.js obtenir l'heure actuelle en millisecondes?


93
var timeArr = moment().format('HH:mm:ss').split(':');

var timeInMilliseconds = (timeArr[0] * 3600000) + (timeArr[1] * 60000);

Cette solution fonctionne, testez-la, mais je préfère simplement utiliser l'api moment au lieu d'utiliser mon propre code.

Ce code renvoie l'heure TODAYS en millisecondes. J'en ai besoin pour appeler une autre fonction en millisecondes ... Impossible d'utiliser l'époque. Besoin de l'heure d'aujourd'hui formatée en millisecondes. 9h00 = 3,24e + 7 millisecondes 21h00 = 6,84e + 7 millisecondes.


9
var timeInMilliseconds = moment().valueOf();Voir jsfiddle.net/rc1s2ek0
IronAces

c'est depuis l'époque ... J'ai besoin de l'heure d'aujourd'hui en millisecondes et non de l'époque.

Vous avez raison, mais votre question indique que vous voulez l'heure en millisecondes ...
IronAces

2
Le plus simple est probablement d'obtenir la différence entre l'époque actuelle moins l'époque du début d'aujourd'hui
Geert-Jan

Réponses:



38

Voir ce lien http://momentjs.com/docs/#/displaying/unix-timestamp-milliseconds/

valueOf() est la fonction que vous recherchez.

Édition de ma réponse (OP veut des millisecondes d'aujourd'hui, pas depuis l'époque)

Vous voulez la milliseconds()fonction OU vous pouvez suivre la voie demoment().valueOf()


1
Merci mais ce n'est pas ce que je demande, c'est depuis l'année d'époque ... l'heure actuelle en millisecondes.

@ code20 ahh, gotcha. On dirait qu'Amy a répondu ci-dessus. Vous recherchez la fonction millisecondes () ou vous pouvez créer un moment vide et utiliser la fonction valueOf. J'ai révisé ma réponse ci-dessus. momentjs a une très bonne documentation là-dessus et c'est assez organisé. Vous pouvez faire des choses assez intéressantes avec. Vous devriez le regarder si vous en avez l'occasion!
James

La réponse d'Amys est incorrecte. c'est le temps 0-999 millisecondes, j'ai lu une bonne quantité de documents et recherché. Je ne peux vraiment pas comprendre celui-ci.

@ code20 Vous cherchez à obtenir les millisecondes de la date d'aujourd'hui? Je suis un peu confus. Vous ne pouvez pas utiliser l'heure de l'époque en millisecondes?
James

1
@ code20, vous devez vraiment être plus précis sur ce que vous voulez. Jusqu'à présent, vous avez reçu des réponses pour ms depuis l'époque, ou les "ms de l'heure actuelle", ce que vous avez demandé. Millisecondes depuis minuit, c'est assez différent.
Amy

21
var timeArr = moment().format('x');

renvoie l'horodatage de la milliseconde Unix selon la documentation format () .


8
Attention, il renvoie l'horodatage en millisecondes mais sous forme de chaîne, préfère moment (). ValueOf () qui renvoie un nombre
Julien

10

Vous pouvez soustraire l'horodatage actuel de minuit le même jour.

Utilisation de l'horodatage actuel:

moment().valueOf() - moment().startOf('day').valueOf()

En utilisant un jour arbitraire:

moment(someDate).valueOf() - moment(someDate).startOf('day').valueOf()

0

Vous pouvez simplement obtenir les composants de temps individuels et calculer le total. Vous semblez vous attendre à ce que Moment ait déjà cette fonctionnalité parfaitement intégrée pour vous, mais ce n'est pas le cas. Je doute que ce soit quelque chose dont les gens ont besoin très souvent.

Exemple:

var m = moment();

var ms = m.milliseconds() + 1000 * (m.seconds() + 60 * (m.minutes() + 60 * m.hours()));

console.log(ms);
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.18.1/moment.min.js"></script>


0

Étant donné que ce fil est le premier de Google que j'ai trouvé, un moyen précis et paresseux que j'ai trouvé est:

const momentObject = moment().toObject();
// date doesn't exist with duration, but day does so use it instead
//   -1 because moment start from date 1, but a duration start from 0
const durationCompatibleObject = { ... momentObject, day: momentObject.date - 1 };
delete durationCompatibleObject.date;

const yourDuration = moment.duration(durationCompatibleObject);
// yourDuration.asMilliseconds()

maintenant, ajoutez simplement quelques prototypes (tels que toDuration ()) / .asMilliseconds () dans moment et vous pouvez facilement passer en millisecondes () ou autre!


-4

Pour obtenir les millisecondes de l'heure actuelle, utilisez http://momentjs.com/docs/#/get-set/millisecond/

var timeInMilliseconds = moment().milliseconds();

il s'agit de millisecondes 0-999 J'ai besoin de l'heure d'aujourd'hui (heures minutes secondes) convertie en millisecondes .....
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.