Convierte la marca de tiempo a la fecha en JavaScript
Este tutorial explicará cómo podemos convertir la marca de tiempo de Unix a la fecha en JavaScript. La marca de tiempo Unix es el tiempo transcurrido desde el 1 de enero de 1970 00:00:00 UTC, representado en segundos.
El objeto Date
de JavaScript contiene la representación del tiempo transcurrido desde el 1 de enero de 1970 00:00:00 UTC en milisegundos.
Convierte la marca de tiempo de Unix en Date
en JavaScript
Cuando creamos un nuevo objeto de la clase Date()
usando new Date()
, devuelve el tiempo en milisegundos cuando se crea. Si necesitamos obtener un objeto de la clase Date
en un momento específico, podemos pasar la marca de tiempo de la época al constructor de esa clase.
var timestamp = 1607110465663
var date = new Date(timestamp);
console.log(date.getTime())
console.log(date)
Resultado:
1607110465663
2020-12-04T19:34:25.663Z
La clase Date
proporciona muchos métodos para representar la Date
en el formato preferido como:
getDate()
devuelve el día del mes calendario1 a 31
en ese momento.getMonth()
devuelve el número del mes0 a 11
en ese momento.getFullYear()
devuelve el año en formato de4 dígitos
.getHours()
devuelve la hora exacta en formato de 24 horas para esa hora.getMinutes()
devuelve los minutos exactos del 0 a 59 en ese momento.getSeconds()
devuelve los segundos exactos 0 a 59 de esa hora.
var timestamp = 1607110465663
var date = new Date(timestamp);
console.log(
'Date: ' + date.getDate() + '/' + (date.getMonth() + 1) + '/' +
date.getFullYear() + ' ' + date.getHours() + ':' + date.getMinutes() + ':' +
date.getSeconds());
Resultado:
Date: 4/12/2020 19:34:25
Dado que la fecha de JavaScript está en la unidad de milisegundo y la de Unix en la unidad de segundo, podemos multiplicar 1000 para convertir la fecha de Unix en la de JavaScript. Si la marca de tiempo de Unix es 1607110465
, entonces la marca de tiempo de JavaScript es 1607110465000
.
El siguiente ejemplo demuestra cómo podemos convertir la marca de tiempo de Unix en la marca de tiempo de JavaScript Date
.
var unixTimestamp = 62678980
var date = new Date(unixTimestamp * 1000);
console.log('Unix Timestamp:', unixTimestamp)
console.log('Date Timestamp:', date.getTime())
console.log(date)
console.log(
'Date: ' + date.getDate() + '/' + (date.getMonth() + 1) + '/' +
date.getFullYear() + ' ' + date.getHours() + ':' + date.getMinutes() + ':' +
date.getSeconds());
Resultado:
Unix Timestamp: 62678980
Date Timestamp: 62678980000
Mon Dec 27 1971 12:49:40 GMT+0200 (Eastern European Standard Time)
Date: 27/12/1971 12:49:40