Skip to content

Instantly share code, notes, and snippets.

@trgomes
Created April 11, 2018 13:55
Show Gist options
  • Save trgomes/94c72aa2836ef929ee4fcc2194bfbd97 to your computer and use it in GitHub Desktop.
Save trgomes/94c72aa2836ef929ee4fcc2194bfbd97 to your computer and use it in GitHub Desktop.
Calcular diferença de dias com JS
//Define um data de inicio
var startDate = new Date('2018-03-20');
//Determina os dias para estimativa (EX.: Expira em 30 dias, faltam 30 dias...)
var estimate = 30;
//Retorna a quantidade de dias restantes para o tempo estimado
function remainingDays(startDate, estimate){
//Define a data atual com a final
var finishDate = new Date().getFullYear() + "-" + (new Date().getMonth()+1) + "-" + new Date().getDate();
//Transforma os minutos em milesegundos
var msecPerMinute = 1000 * 60;
//Transforma as horas em milesegundos
var msecPerHour = msecPerMinute * 60;
//Transforma os dias em milesegundos
var msecPerDay = msecPerHour * 24;
var sDate = new Date(startDate);
var StartDateMsec = sDate.getTime();
var fDate = new Date();
var finishDateMsec = fDate.getTime();
var interval = finishDateMsec - StartDateMsec;
var days = Math.floor(interval / msecPerDay );
console.log("dias ", days);
var diff = estimate - days;
if (diff < 0){
return 0;
}
return diff;
}
document.write("******** " + remainingDays(startDate));
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment