Tengo dos citas:
const a = moment(start) const b = moment(end) donde por ejemplo: a "2022-03-22T09:00:00.000Z" b "2022-03-22T09:30:00.000Z"
Ahora estoy interesado en calcular solo la diferencia sobre el tiempo.
Entonces, por ejemplo, si hago moment.duration(b.diff(a))) obtengo PM30
Pero lo que me gustaría obtener es la diferencia como:
`a "2022-03-22T09:00:00.000Z" b "2022-03-22T09:30:00.000Z"` => b - a = 0.5 `a "2022-03-22T09:00:00.000Z" b "2022-03-22T10:30:00.000Z"` => b - a = 1.5¿Como lo puedo hacer?
para entrar en horas agregue .asHours()
var a = moment('2022-03-22T09:00:00.000Z');//now var b = moment('2022-03-22T10:30:00.000Z'); console.log(moment.duration(b.diff(a)).asHours()); <script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.29.1/moment.min.js"></script>Esto se puede calcular fácilmente utilizando las fechas estándar de JavaScript sin incurrir en la sobrecarga adicional en caso de que sea una opción para usted:
const SEC = 1000, MIN = SEC * 60, HOUR = MIN * 60, DAY = HOUR * 24; const a = new Date("2022-03-22T09:00:00.000Z"); const b = new Date("2022-03-22T09:30:00.000Z"); const diff = b - a; console.log("Time difference is:\n" + `${diff} milliseconds or\n` + `${diff / SEC} seconds or\n` + `${diff / MIN} minutes or\n` + `${diff / HOUR} hours or\n` + `${diff / DAY} days`);