Neste artigo você vai aprender a calcular a diferença entre duas datas com JavaScript, de uma forma simples e eficaz
Conteúdo também disponível em vídeo:
Fala programador(a), beleza? bora aprender mais sobre datas, Moment.js e JavaScript!
Neste artigo vamos utilizar a biblioteca Moment.js, pois ela é excelente para manipulação de datas
Cabe lembrar que o projeto foi pausado para a adição de novas funcionalidades, os desenvolvedores escolheram por manter o projeto, pois acreditam que este seja o melhor destino para o mesmo, então fique atento a isso 🙂
Você pode fazer o download do Moment.js utilizando este link
Ou você pode utilizar um CDN, como este link:
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.29.1/moment.min.js" integrity="sha512-qTXRIMyZIFb8iQcfjXWCO8+M5Tbc38Qi5WzdPOYZHIlZpzBHG3L3by84BBBOiRGiEb7KKtAOAs5qYdUiZiQNNQ==" crossorigin="anonymous"></script>
Digamos então que temos duas datas e queremos saber a diferença de dias da mesma, veja:
var d1 = "29/08/2020 10:48:00"; var d2 = "12/12/2020 12:01:00";
Veja agora a solução completa com Moment.js:
var d1 = "29/08/2020 10:48:00"; var d2 = "12/12/2020 12:01:00"; var diff = moment(d2,"DD/MM/YYYY HH:mm:ss").diff(moment(d1,"DD/MM/YYYY HH:mm:ss")); var dias = moment.duration(diff).asDays(); console.log(dias); // 105
Primeiramente checamos a diferença das duas datas com o método diff
Depois verificamos a duração com o método duration
Que podemos concatenar com o método asDays, para ter a diferença de dias entre as duas datas
Neste exemplo a diferença foi de aproximadamente 105 dias
Sugiro você conhecer os outros métodos da biblioteca, pois ela realmente é muito completa para trabalhar com datas
Podemos tirar a diferença de horas e anos, por exemplo
Conclusão
Neste artigo aprendemos a como calcular a diferença entre duas datas com JavaScript
Utilizamos a biblioteca Moment.js, que cabe citar aqui que a mesma está pausada para desenvolvimento, há apenas manutenção da lib
Com ela podemos trabalhar com datas muito facilmente, conforme o exemplo acima que calculamos a diferença entre duas datas
Confira também nosso catálogo de cursos gratuitos, com aulas semanais no YouTube