Obtenir unixtimestamp actuel en utilisant Moment.js


138

Je veux obtenir le TimeStamp Unix en utilisant Moment.js. Je peux trouver de nombreuses fonctions qui convertissent l'horodatage en date dans moment.js. Je sais que je peux facilement obtenir l'horodatage unix en utilisant la fonction JavaScript suivante: Math.floor(new Date().getTime()/1000).

Mais je veux utiliser Moment.js pour obtenir le même résultat. Y a-t-il une fonction directe dans moment.js pour obtenir l'horodatage actuel?

Réponses:


262

Pour trouver l'horodatage Unix en quelques secondes:

moment().unix()

La documentation est votre ami. :)


23
C'est en secondes, pas en millisecondes
Alon Dahari

19
@climbinghobo - oui. C'est ce qui était demandé dans la question.
Matt Johnson-Pint

16
@climbinghobo si vous voulez utiliser en millisecondesmoment().valueOf()
Gaurav Bharti

Plus valide. Voir la réponse @kumar chandraketu ci-dessous.
kaiser le

1
la documentation est peut-être mon ami , mais StackOverflow est mon meilleur ami .
Yvonne Aburrow

137

Pour tous ceux qui trouvent cette page à la recherche d'un horodatage unix en millisecondes, la documentation indique

moment().valueOf()

ou

+moment();

vous pouvez également l'obtenir moment().format('x')(ou .format('X')[ X majuscule ] pour les secondes unix avec des millisecondes décimales), mais cela vous donnera une chaîne. Quel moment.js ne sera pas analysé en arrière par la suite, à moins que vous ne le convertissiez / convertissiez d'abord en un nombre.


3
Très bien, mais le dernier ( +moment()) semble assez risqué!
Daniel F

@JRichardsz qui semble être une étape d'analyse inutile, puisque les deux premiers que j'ai mentionnés vous donneront la valeur correcte en tant que nombre.
mix3d

1
Correct. De la documentation : moment().valueOf(); ou +moment();
Steve Swinsburg

@ mix3d je vais essayer. Merci!
JRichardsz

20

pour l'horodatage UNIX en millisecondes

moment().format('x') // lowerCase x

pour l'horodatage UNIX en secondes moment().format('X') // capital X


5
Remarque: ceux-ci vous donneront la valeur sous forme de chaîne et non d'objets numériques.
mix3d

7

Essayez l'un de ces

valof = moment().valueOf();            // xxxxxxxxxxxxx
getTime = moment().toDate().getTime(); // xxxxxxxxxxxxx
unixTime =  moment().unix();           // xxxxxxxxxx
formatTimex =  moment().format('x');   // xxxxxxxxxx
unixFormatX = moment().format('X');    // xxxxxxxxxx
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.