O objeto nativo Date do JavaScript representa um unico momento no tempo com precisao de milissegundos a partir de 1 de janeiro de 1970.
Criação de Instâncias de Data
const now = new Date(); // Momento atual
const epoch = new Date(1730000000000); // A partir de timestamp em milissegundos
const iso = new Date('2026-10-25T14:30:00Z'); // A partir de string padronizada ISO 8601
const custom = new Date(2026, 9, 25, 14, 30); // Ano, mes (0 e janeiro), dia, horas, minutos
Métodos de Obtenção (Getters)
| Método | Hora Local | Equivalente UTC |
|---|---|---|
getFullYear() |
Ano completo de 4 digitos | getUTCFullYear() |
getMonth() |
Indice do mes (0 a 11) | getUTCMonth() |
getDate() |
Dia do mes (1 a 31) | getUTCDate() |
getDay() |
Dia da semana (0 e domingo) | getUTCDay() |
getHours() |
Horas (0 a 23) | getUTCHours() |
getMinutes() |
Minutos (0 a 59) | getUTCMinutes() |
getSeconds() |
Segundos (0 a 59) | getUTCSeconds() |
getMilliseconds() |
Milissegundos (0 a 999) | getUTCMilliseconds() |
getTime() |
Timestamp Unix em milissegundos | (same timestamp) |
Operações Aritméticas e Diferenças Temporais
// Adicionar 7 dias a data
const target = new Date();
target.setDate(target.getDate() + 7);
// Diferenca entre duas datas em dias
const d1 = new Date('2026-10-01');
const d2 = new Date('2026-10-25');
const diffMs = d2 - d1;
const diffDays = Math.floor(diffMs / (1000 * 60 * 60 * 24)); // => 24
Formatação e Apresentação
const date = new Date('2026-10-25T14:30:00Z');
date.toISOString(); // "2026-10-25T14:30:00.000Z"
date.toDateString(); // "Sun Oct 25 2026"
date.toTimeString(); // "14:30:00 GMT+0000"
date.toLocaleDateString(); // e.g. "10/25/2026"