ahora no tengo tiempo para escribirte una función, pero te sugiero que uses el objeto Date para pasar las fechas a microsegundos con getTime() (
ver aquí) y luego haciendo una simple resta y pasar el resultado de microsegundos a horas... debería darte las horas de diferencia, incluso los minutos y segundos si quieres.