Formatos de data JavaScript
Entrada de data JavaScript
Geralmente, existem 3 tipos de formatos de entrada de data JavaScript:
Modelo | Exemplo |
---|---|
Data ISO | "2015-03-25" (O Padrão Internacional) |
Encontro curto | "25/03/2015" |
Data Longa | "25 de março de 2015" ou "25 de março de 2015" |
O formato ISO segue um padrão estrito em JavaScript.
Os outros formatos não são tão bem definidos e podem ser específicos do navegador.
Saída de data JavaScript
Independente do formato de entrada, o JavaScript irá (por padrão) produzir datas no formato de string de texto completo:
Sat Jan 29 2022 23:36:44 GMT+0000 (Coordinated Universal Time)
Datas ISO JavaScript
A ISO 8601 é a norma internacional para a representação de datas e horas.
A sintaxe ISO 8601 (AAAA-MM-DD) também é o formato de data JavaScript preferido:
Exemplo (data completa)
const d = new Date("2015-03-25");
A data calculada será relativa ao seu fuso horário.
Dependendo do seu fuso horário, o resultado acima varia entre 24 e 25 de março.
Datas ISO (Ano e Mês)
As datas ISO podem ser escritas sem especificar o dia (AAAA-MM):
Exemplo
const d = new Date("2015-03");
Os fusos horários irão variar o resultado acima entre 28 de fevereiro e 01 de março.
Datas ISO (somente ano)
As datas ISO podem ser escritas sem mês e dia (AAAA):
Exemplo
const d = new Date("2015");
Os fusos horários irão variar o resultado acima entre 31 de dezembro de 2014 e 01 de janeiro de 2015.
Datas ISO (Data-Hora)
As datas ISO podem ser escritas com horas, minutos e segundos adicionados (AAAA-MM-DDTHH:MM:SSZ):
Exemplo
const d = new Date("2015-03-25T12:00:00Z");
A data e a hora são separadas por um T maiúsculo.
A hora UTC é definida com uma letra maiúscula Z.
Se você quiser modificar a hora relativa ao UTC, remova o Z e adicione +HH:MM ou -HH:MM:
Exemplo
const d = new Date("2015-03-25T12:00:00-06:30");
UTC (Universal Time Coordinated) é o mesmo que GMT (Greenwich Mean Time).
Omitir T ou Z em uma string de data e hora pode fornecer resultados diferentes em diferentes navegadores.
Fusos horários
Ao definir uma data, sem especificar o fuso horário, o JavaScript usará o fuso horário do navegador.
Ao obter uma data, sem especificar o fuso horário, o resultado é convertido para o fuso horário do navegador.
Em outras palavras: Se uma data/hora for criada em GMT (Greenwich Mean Time), a data/hora será convertida para CDT (Central US Daylight Time) se um usuário navegar a partir da região central dos EUA.
Datas curtas de JavaScript.
Datas curtas são escritas com uma sintaxe "MM/DD/AAAA" como esta:
Exemplo
const d = new Date("03/25/2015");
AVISOS!
Em alguns navegadores, meses ou dias sem zeros à esquerda podem produzir um erro:
const d = new Date("2015-3-25");
O comportamento de "AAAA/MM/DD" é indefinido.
Alguns navegadores tentarão adivinhar o formato. Alguns retornarão NaN.
const d = new Date("2015/03/25");
O comportamento de "DD-MM-AAAA" também é indefinido.
Alguns navegadores tentarão adivinhar o formato. Alguns retornarão NaN.
const d = new Date("25-03-2015");
Datas Longas JavaScript.
Datas longas são mais frequentemente escritas com uma sintaxe "MMM DD YYYY" como esta:
Exemplo
const d = new Date("Mar 25 2015");
Mês e dia podem estar em qualquer ordem:
Exemplo
const d = new Date("25 Mar 2015");
E o mês pode ser escrito por extenso (janeiro) ou abreviado (janeiro):
Exemplo
const d = new Date("January 25 2015");
Exemplo
const d = new Date("Jan 25 2015");
As vírgulas são ignoradas. Os nomes não diferenciam maiúsculas de minúsculas:
Exemplo
const d = new Date("JANUARY, 25, 2015");
Entrada de data - Datas de análise
Se você tiver uma string de data válida, poderá usar o
Date.parse()
método para convertê-la em milissegundos.
Date.parse()
retorna o número de milissegundos entre a data e 1º de janeiro de 1970:
Exemplo
let msec = Date.parse("March 21, 2012");
Você pode então usar o número de milissegundos para convertê-lo em um objeto de data:
Exemplo
let msec = Date.parse("March 21, 2012");
const d = new Date(msec);
Referência de data JavaScript completa
Para uma referência de data completa, acesse nosso:
Referência de data JavaScript completa .
A referência contém descrições e exemplos de todas as propriedades e métodos de data.