Obteniendo unixtimestamp actual usando Moment.js

138

Quiero obtener la marca de tiempo de Unix usando Moment.js. Puedo encontrar muchas funciones que convierten la marca de tiempo a la fecha en moment.js. Sé que puedo conseguir fácilmente la marca de tiempo Unix mediante el uso de la función JavaScript siguiente: Math.floor(new Date().getTime()/1000).

Pero quiero usar Moment.js para obtener el mismo resultado. ¿Hay alguna función directa en moment.js para obtener la marca de tiempo actual?

chandan
fuente

Respuestas:

262

Para encontrar la marca de tiempo de Unix en segundos:

moment().unix()

La documentación es tu amiga. :)

Matt Johnson-Pint
fuente
23
Eso es en segundos, no milisegundos
Alon Dahari
19
@climbinghobo: sí. Eso es lo que se pidió en la pregunta.
Matt Johnson-Pint
16
@climbinghobo si quieres usar en milisegundosmoment().valueOf()
Gaurav Bharti
Ya no es válido Ver la respuesta de @kumar chandraketu a continuación.
Kaiser
1
La documentación puede ser mi amigo , pero StackOverflow es mi mejor amigo .
Yvonne Aburrow
137

Para cualquiera que encuentre esta página buscando marca de tiempo de Unix con milisegundos, la documentación dice

moment().valueOf()

o

+moment();

también puede hacerlo moment().format('x')(o .format('X')[ mayúscula X ] durante unix segundos con milisegundos decimales), pero eso le dará una cadena. ¿Qué moment.js en realidad no se analizará después, a menos que primero lo conviertas / conviertas a un número?

mix3d
fuente
3
Muy bonito, ¡pero el último ( +moment()) parece bastante arriesgado!
Daniel F
@JRichardsz que parece un paso de análisis innecesario, ya que los dos primeros que mencioné le darán el valor correcto como un Número.
mix3d
1
Correcto. De la documentación : moment().valueOf(); o +moment();
Steve Swinsburg
@ mix3d lo intentaré. ¡Gracias!
JRichardsz
20

para sello de tiempo UNIX en milisegundos

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

para sello de tiempo UNIX en segundos moment().format('X') // capital X

django
fuente
55
Nota: estos le darán el valor como una cadena, y no como objetos numéricos.
mix3d
7

Prueba cualquiera de estos

valof = moment().valueOf();            // xxxxxxxxxxxxx
getTime = moment().toDate().getTime(); // xxxxxxxxxxxxx
unixTime =  moment().unix();           // xxxxxxxxxx
formatTimex =  moment().format('x');   // xxxxxxxxxx
unixFormatX = moment().format('X');    // xxxxxxxxxx
kumar chandraketu
fuente