Объект javascript Date внутренне сохраняет даты в виде целых чисел, считая количество миллисекунд с 0:00 1 января 1970 года.
Таким образом, добавляя / вычитая две даты JS из каждойдругие приведут к разнице между ними в миллисекундах.Преобразовать их в часы легко, если вы знаете, что за один час есть 60 * 60 * 1000 = 3 600 000 мс:
var a = new Date(old),
b = new Date(newer),
hoursBetween = (b - a) / 3600000;