Javascript

Converter Unix para date Javascript

Neste tutorial mostro como converter Unix Timestamp para string date em Javascript.


 

Converter Unix para date Javascript
Converter Unix para date Javascript

Introdução 

Neste tutorial veremos como converter  o tipo Unix Timestamp para o tipo String Date no  Javascript .

O principal objetivo deste tutorial e demonstrar de uma forma prática como faço para converter do padrão Unix para String Date,

Resolvi fazer este tutorial, pois como sempre encontramos dificuldades em trabalhar com o formato de Data tanto no Frontend quanto no Backend . 

 

 

Unix Timestamp

O Unix timestamp, também é conhecido como “Epoch time”, nada mais é que uma representação do tempo em um número inteiro, medido em segundos, desde a meia-noite UTC (Coordinated Universal Time) de 1 de janeiro de 1970.

Ele é um formato comumente adotado por Apis quando queremos padronizar representações dos atributos de datas tanto nas respostas quanto nas requisições de apis.

 

Como fazer a conversão

Para executar este tutorial resolvi adotar o padrão de saída da Date String para DD-MM-YYYY HH:MM:SS, logo abaixo mostro a função que criei para realizar a conversão:

 

// Converte unix_timestamp em string date "DD-MM-YYYY HH:MM:SS"
function formatToDateString(unix_timestamp) {

          const date = new Date(unix_timestamp * 1000);
          
          return (
          [
              padTo2Digits(date.getDate()),
              padTo2Digits(date.getMonth() + 1),
              date.getFullYear(),
          ].join('-') + ' ' +
          [
              padTo2Digits(date.getHours()),
              padTo2Digits(date.getMinutes()),
              padTo2Digits(date.getSeconds()),
          ].join(':')
          );
}
      
// função usada para adicionar adicionar 0 a frente de números com apenas 1 casa decimal
function padTo2Digits(num) {
  return num.toString().padStart(2, '0');
}			

 

 

Explicando o código de Converter Unix para date Javascript

 

  1. No inicio do código temos a função formatToDateString(unix_timestamp), que recebe um valor unix_timestamp como parametro;
  2. Dentro da função contem toda a logica para realizarmos a conversão;
  3. Logo na primeira linha dentro da função estou convertendo o valor passado no parâmetro da função para o tipo Date, veja que estou instanciando o new Date(unix_timestamp * 1000) passando como parâmetro o valor unix_timestamp, multiplicando por 1000;
  4. Na linha de retorno crio a logica, onde separo a data por partes, afim de pegar cada item da data como (dia, mês, ano, hora, etc…), veja que estou utilizando a função padTo2Digits.
  5. A função padTo2Digits, serve para formata o numero retornando adicionando um (0) a frente dos retornos com apenas um(1) digito;

 

Explicando a função padTo2Digits(num)

 

A função padTo2Digits(num), foi criada apenas no intuito de formatar a saída de um valor para que caso o valor contenha apenas (1) digito a função adicione o número (0) a frente dese valor.

Está função espera como parâmetro um valor do tipo Number e retorna um valor do tipo String.

 

Utilizando a função de Converter Unix para date Javascript

 

Para realizarmos a conversão basta chamar a função formatToDateString(unix_timestamp), passando o número a ser convertido e logo ela retornara o valor convertido como resposta, logo abaixo mostro como utilizar a função:

 

console.log(formatToDateString(1664913450));

# A saída será:
04-10-2022 16:57:30

Referências:

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *