Calculadora de Diferença de Datas
Calcule a diferença exata entre duas datas em anos, meses, semanas e dias. Encontre dias úteis, adicione ou subtraia dias de uma data, e mais.
Date Difference
1yr0d
Total days
365
Total weeks
52 weeks, 1 days
Business days
262
Weekend days
104
Total hours
8,760
Full years
1
Como Usar Calculadora de Diferença de Datas
- 1Digite a data de início e a data de término.
- 2Veja a diferença em anos, meses, semanas e dias.
- 3Veja a contagem de dias da semana vs dias de fim de semana.
- 4Ou use o modo Adicionar/Subtrair para encontrar uma data N dias adiante.
ZenovayAnalytics
Transforme seu tráfego em clientes.
- Acompanhamento de visitantes em tempo real
- Privacidade em primeiro lugar, sem banner de cookies
- Configurado em dois minutos
Ferramentas Relacionadas
Conversor de Cores
Converta cores entre os formatos HEX, RGB, HSL e CMYK. Visualização ao vivo com seletor de cores.Conversor de Unidades
Converta entre unidades de comprimento, peso, temperatura, área, volume, velocidade e muito mais.Conversor de Base Numérica
Converta números entre as bases binária, octal, decimal e hexadecimal.Conversor de Timestamp Unix
Converta entre timestamps Unix e datas legíveis por humanos. Mostre ISO 8601, UTC, hora local e hora relativa.Perguntas Frequentes
Como calcular o número de dias entre duas datas?▾
Método 1: Subtraia timestamps em milissegundos e divida por 86.400.000 (ms por dia). JavaScript: Math.floor((new Date(end) - new Date(start)) / 86400000). Método 2: Use a diferença em timestamps de meia-noite UTC para evitar problemas de horário de verão. Dica: sempre use Date.UTC() ou analise datas ISO para evitar bugs de deslocamento de fuso horário. Em Python: (date2 - date1).days. O resultado é o número inclusivo de dias de início a fim.
O que são dias úteis (dias de trabalho)?▾
Dias úteis excluem fins de semana (sábado, domingo) e opcionalmente feriados públicos. Calculando dias úteis entre duas datas: itere cada dia, pule fins de semana. Fórmula sem iteração: dias úteis = dias totais - (semanas completas × 2) - fins de semana de semana parcial. Para feriados, mantenha uma lista de datas para pular. Nota internacional: alguns países trabalham no sábado, e os calendários de feriados diferem. Segunda-feira é tipicamente o primeiro dia útil na maioria dos países.
Como adiciono ou subtraio dias de uma data?▾
JavaScript: new Date(date.getTime() + days × 86400000) — evita problemas de DST usando milissegundos. Ou: date.setDate(date.getDate() + days) — modifica no local. Python: date + timedelta(days=N). SQL: DATE_ADD(date, INTERVAL N DAY) (MySQL) ou date + N (PostgreSQL). Adicionar meses é mais complicado (comprimentos de mês diferem): date.setMonth(date.getMonth() + N) em JavaScript lida com isso corretamente, rolando para o próximo mês se necessário (31 de março + 1 mês = 30 de abril, não 31 de abril).
O que causa erros de cálculo de data?▾
Armadilhas comuns: problemas de fuso horário — new Date("2024-01-15") analisado como meia-noite UTC, diferente de new Date("2024-01-15T00:00:00") (hora local). DST (Horário de Verão) — dias podem ter 23 ou 25 horas, então multiplicar horas por dias dá resultados errados. Aritmética de final de mês — adicionar 1 mês a 31 de janeiro pode dar 28 de fevereiro ou 2 de março. Tratamento de anos bissextos — 29 de fevereiro não existe em anos não bissextos. Melhor prática: use timestamps UTC ISO 8601 e bibliotecas de datas testadas (date-fns, Luxon) para cálculos críticos.
Qual é o formato de data ISO 8601?▾
ISO 8601 é o padrão internacional para representação de data e hora: datas como YYYY-MM-DD (2024-01-15), horas como HH:mm:ss, combinadas: 2024-01-15T10:30:00Z (UTC). O formato é inequívoco — diferente de 01/15/24 que poderia ser 15 de janeiro ou 15 de janeiro dependendo da localidade. ISO 8601 classifica corretamente alfabeticamente. Formato de duração: P1Y2M3DT4H5M6S (1 ano 2 meses 3 dias 4 horas 5 minutos 6 segundos). Intervalo: 2024-01-01/2024-12-31.