HOWTO · JavaScript

Formatar uma data de JavaScript

Este tutorial apresenta como formatar uma data JavaScript.

Este tutorial explica como formatar uma data JavaScript.

Podemos obter a data e hora atuais usando o objeto JavaScript Date. Podemos formatar a data escrevendo nossas próprias funções personalizadas e usando bibliotecas como moment.js.

Primeiro, criamos uma variável chamada data usando o objeto Data para obter a data e hora atuais.

var date = new Date();

Mostraremos o resultado de todas as funções de formatação aplicadas a esta variável.

Formatar dados JavaScript usando toTimeString() em JavaScript

toTimeString() ajuda a extrair apenas a string contendo informações sobre o tempo da variável date.

var date = new Date();
result = date.toTimeString();
console.log(result);

Resultado:

"20:07:37 GMT+0100 (Central European Standard Time)"

Formatar dados de JavaScript usando toUTCString() em JavaScript

Este método retorna o Horário de Greenwich ou o Horário Universal Coordenado do horário do país atual armazenado na variável.

var date = new Date();
result = date.toUTCString();
console.log(result);

Resultado:

"Thu, 18 Mar 2021 19:09:40 GMT"

Formatar dados de JavaScript usando toDateString() em JavaScript

Este método extrai a data e a retorna na forma de uma string.

var date = new Date();
result = date.toDateString();
console.log(result);

Resultado:

"Thu Mar 18 2021"

Formatar dados de JavaScript usando toISOString() em JavaScript

Ele retorna uma string contendo a data/hora no formato ISO 8601.

var date = new Date();
result = date.toISOString();
console.log(result);

Resultado:

"2021-03-18T19:11:35.957Z"

Formatar dados de JavaScript usando toLocaleString() em JavaScript

Ele converte o objeto de data em uma string usando as configurações de local.

var date = new Date();
result = date.toLocaleString();
console.log(result);

Resultado:

"3/18/2021, 8:13:03 PM"

Formatar dados JavaScript usando toLocaleTimeString() em JavaScript

Ele converte o objeto de data, mas extrai apenas a hora para uma string usando as configurações de local.

var date = new Date();
result = date.toLocaleTimeString();
console.log(result);

Resultado:

"8:14:22 PM"

Use as funções personalizadas para formatar a data em JavaScript

Formato de data dd-mm-aaaa ou dd / mm / aaaa e padrões semelhantes

Usamos os métodos getDate(), getMonth() e getFullYear() para obter as partes da data em partes e concatená-las usando o símbolo que desejamos e na ordem que desejamos.

Por exemplo, podemos obter dd / mm / aaaa, dd-mm-aaaa, mm-dd-aaaa, mm / aaaa da maneira que quisermos, escrevendo uma função personalizada como escrevemos abaixo.

var date = new Date();
const formatDate = (date) => {
  let formatted_date =
      date.getDate() + '-' + (date.getMonth() + 1) + '-' + date.getFullYear()
  return formatted_date;
} console.log(formatDate(date));

Resultado:

"18-3-2021"

Também podemos colocar o nome do mês, como janeiro, fevereiro, março, dentro da string de data.

var date = new Date();
const months = [
  'JAN', 'FEB', 'MAR', 'APR', 'MAY', 'JUN', 'JUL', 'AUG', 'SEP', 'OCT', 'NOV',
  'DEC'
];

const formatDate = (date) => {
  let formatted_date =
      date.getDate() + '-' + months[date.getMonth()] + '-' + date.getFullYear()
  return formatted_date;
} console.log(formatDate(date));

Resultado:

"18-MAR-2021"

Formato de data aaaa-mm-dd hh: mm: ss e padrões semelhantes

Usamos todos os métodos getDate(), getMonth() e getFullYear(), getHour(), getminutes(), getsecond() para obter as partes de data e hora individualmente e concatená-los usando o símbolo que desejamos e na ordem que desejamos.

var date = new Date();

const formatDate =
    (current_datetime) => {
      let formatted_date = current_datetime.getFullYear() + '-' +
          (current_datetime.getMonth() + 1) + '-' + current_datetime.getDate() +
          ' ' + current_datetime.getHours() + ':' +
          current_datetime.getMinutes() + ':' + current_datetime.getSeconds();
      return formatted_date;
    }

                          console.log(formatDate(date));

Resultado:

"2021-3-18 20:21:2"

Use o pacote Moment.js com Node.js para formatar a data em JavaScript

É considerada a melhor biblioteca de data e hora em JavaScript. É fácil de usar e não é necessário memorizar e construir todas essas funções diferentes. Os usuários podem escrever facilmente um modelo de string de acordo com suas necessidades de formatação.

const moment = require('moment');
let m = moment();
m.format('[Time: ] h:mm:ss a');  // output of the form `Time: 11:39:03 pm`

O código acima demonstra uma das maneiras pelas quais moment.js nos permite formatar data e hora usando o Node REPL.

Use o pacote dateformat com Node.js

Outro pacote como Moment.js pode nos ajudar a formatar Date. Ele funciona com Node.js e JavaScript do lado do navegador. Ele estende o objeto Date incluindo um método .format().

Lado do navegador

Day = new Date();
Day.format('dd-m-yy');  // Returns '16-3-21'

O código acima mostra a simplicidade de usar o pacote dateformat com o objeto Date.

Node.js

const dateformat = require('dateformat');
let now = new Date();
dateformat(now, 'dddd, mmmm dS, yyyy, h:MM:ss TT');  // returns 'Tuesday, March
                                                     // 16th, 2021, 11:32:08 PM'

O código acima demonstra o uso do pacote dateformat para formatar a data com o Node REPL.