Date e simplificando operações do dia a dia.
Criada para ser mais precisa e previsível, a Temporal resolve problemas clássicos:
conversões de fuso, horário de verão (DST), cálculos de duração e formatações locais.
Ela introduz tipos dedicados, como Temporal.PlainDate, Temporal.ZonedDateTime e Temporal.Duration, cada um focado em um uso específico.
// Data sem horário/fuso
const d = Temporal.PlainDate.from('2025-10-06');
d.add({ days: 7 });
// Data e hora com fuso
const z = Temporal.ZonedDateTime.from({
year: 2025, month: 10, day: 6,
hour: 9, timeZone: 'America/Sao_Paulo'
});
const emUTC = z.withTimeZone('UTC');
// Duração clara
const dur = Temporal.Duration.from('P2DT3H'); // 2 dias e 3 horas
Além da API mais clara, a Temporal facilita tarefas comuns de qualquer sistema: agendamento de tarefas, logs consistentes, relatórios por período e integração com bancos de dados. Outro ponto importante é a interoperabilidade com bibliotecas e com o ecossistema atual.
Boas práticas:
• Use PlainDate quando não precisar de horário/fuso (ex.: datas de aniversário).
• Prefira ZonedDateTime para eventos com horário real em uma região (ex.: agenda).
• Trabalhe com Duration para cálculos de períodos sem ambiguidade.