Converter o Timestamp para Data em JavaScript
Este tutorial irá explicar como podemos converter o carimbo da hora Unix para data em JavaScript. Unix timestamp é o tempo decorrido desde o 1, Jan 1970 00:00:00 UTC, representado em segundos.
O objecto JavaScript Date
contém a representação do tempo decorrido desde 1 de Janeiro de 1970 00:00:00 UTC, representado em milissegundos.
Converter o Unix Timestamp em Date
em JavaScript
Quando criamos um novo objecto da classe Date()
utilizando new Date()
, ele devolve o tempo em milissegundos quando é criado. Se precisarmos de obter um objecto da classe Date
num ponto específico de tempo, podemos passar o carimbo da hora da época ao construtor dessa classe.
var timestamp = 1607110465663
var date = new Date(timestamp);
console.log(date.getTime())
console.log(date)
Resultado:
1607110465663
2020-12-04T19:34:25.663Z
A classe Date
fornece muitos métodos para representar a Date
no formato preferido, como por exemplo:
getDate()
retorna o dia do mês civil de1 a 31
naquele momento.getMonth()
retorna o número do mês0 a 11
naquele momento.getFullYear()
retorna o ano no formato de4 dígitos
.getHours()
retorna a hora exata no formato24 horas
para aquela hora.getMinutes()
retorna os minutos exatos de0 a 59
naquele momento.getSeconds()
retorna os segundos exatos de0 a 59
naquele momento.
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
Uma vez que o JavaScript Date
timestamp está na unidade de milissegundo enquanto o timestamp Unix está na unidade de segundo, podemos multiplicar 1000 para converter o timestamp Unix para timestamp JavaScript. Se o carimbo de tempo Unix for 1607110465
, então o carimbo de tempo JavaScript é 1607110465000
.
O exemplo seguinte demonstra como podemos converter o carimbo da hora Unix para JavaScript Date
timestamp.
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