Надеюсь, это поможет. Вы можете получить разницу между датами в миллисекундах, а затем передать функцию для преобразования миллисекунд в секунды, минуты, часы или годы.
var dates = ["Jun 01 2020 12:00:00", "Jun 03 2020 15:00:00", "Jun 06 2020 15:00:00", "Jun 08 2020 22:00:00"];
var fechas = [];
for(i=0; i<dates.length; i++){
fechas.push(new Date(dates[i]));
}
console.log(fechas);
function convertMiliseconds(miliseconds, format) {
var days, hours, minutes, seconds, total_hours, total_minutes, total_seconds;
total_seconds = parseInt(Math.floor(miliseconds / 1000));
total_minutes = parseInt(Math.floor(total_seconds / 60));
total_hours = parseInt(Math.floor(total_minutes / 60));
days = parseInt(Math.floor(total_hours / 24));
seconds = parseInt(total_seconds % 60);
minutes = parseInt(total_minutes % 60);
hours = parseInt(total_hours % 24);
switch(format) {
case 's':
return total_seconds;
case 'm':
return total_minutes;
case 'h':
return total_hours;
case 'd':
return days;
default:
return { d: days, h: hours, m: minutes, s: seconds };
}
};
var milisecondsDiference = fechas[1] - fechas[0];
console.log(convertMiliseconds(milisecondsDiference, 'h')); //Output 51 hours