Calculando uma data no futuro ou passado

JavaScript:
Calculando uma data no futuro ou passado

Como Fazer:

// Adicionar dias à data atual
const hoje = new Date();
const diasParaAdicionar = 10;
const dataFutura = new Date(hoje.getTime() + diasParaAdicionar * 24 * 60 * 60 * 1000);
console.log(dataFutura);

// Subtrair dias da data atual
const diasParaSubtrair = 5;
const dataPassada = new Date(hoje.getTime() - diasParaSubtrair * 24 * 60 * 60 * 1000);
console.log(dataPassada);

Saída de exemplo:

// Saída possível se hoje for 1 de Abril de 2023
2023-04-11T12:35:00.000Z // dataFutura
2023-03-27T12:35:00.000Z // dataPassada

Mais Detalhes:

Historicamente, a gestão de datas em JavaScript foi algo complicado devido às diferenças de fuso horário e ao tratamento ineficiente do objeto Date. Hoje, existem bibliotecas como Moment.js e date-fns que simplificam essas operações, mas sempre é útil saber manipular o objeto Date nativo do JavaScript.

Para calcular uma data futura ou passada, o trabalho envolve obter o timestamp atual, que é o número de milissegundos desde o Unix Epoch (1º de Janeiro de 1970), e adicionar ou subtrair o número equivalente de milissegundos para o intervalo de tempo desejado. Depois, cria-se uma nova data com o novo timestamp.

Ao trabalhar com datas, é importante considerar o fuso horário do usuário e a possibilidade de horário de verão. Em ambientes de produção, recomendam-se bibliotecas especializadas que lidam com essas complexidades.

Veja Também: