Ver Mensaje Individual
  #10 (permalink)  
Antiguo 24/03/2015, 14:26
Avatar de maximendez88
maximendez88
 
Fecha de Ingreso: septiembre-2012
Ubicación: Montevideo
Mensajes: 131
Antigüedad: 12 años, 2 meses
Puntos: 3
Respuesta: multiplicar, dividir horas y minutos con javascript

Cita:
Iniciado por Alexis88 Ver Mensaje
Para el cálculo de horas, solo resta la hora final menos la hora inicial y multiplica el resultado por la cantidad de días trabajados. Para los minutos, multiplica la hora final por 60 (1 hora = 60 minutos) y súmale los minutos de dicha hora, luego, haz lo mismo con la hora inicial, resta ambas cantidad (final - inicial) y multiplica el resultado por la cantidad de días trabajados.

Como no puede haber más de 59 minutos en la visualización de la hora, utiliza un bucle mediante el cual irás restando 60 a la cantidad total de minutos hasta que esta sea menor o igual a 59 y por cada resta, suma una hora al total de horas.

Un ejemplo:

Código Javascript:
Ver original
  1. var horaInicio = "08:30",
  2.     horaFin = "12:50",
  3.     cantidadDias = 4,
  4.     tiempoIni = horaInicio.split(":"),
  5.     tiempoFin = horaFin.split(":"),
  6.     horasIni = parseInt(tiempoIni[0]),
  7.     minutosIni = parseInt(tiempoIni[1]),
  8.     horasFin = parseInt(tiempoFin[0]),
  9.     minutosFin = parseInt(tiempoFin[1]),
  10.     horas = (horasFin - horasIni) * cantidadDias,
  11.     minutos = (
  12.         (horasFin * 60 + minutosFin) - (horasIni * 60 + minutosIni)
  13.     ) * cantidadDias;
  14.  
  15. while (minutos > 59){
  16.     minutos -= 60;
  17.     horas++;   
  18. }
  19.  
  20. console.log("El total de tiempo de trabajo es de " + horas + ":" + minutos); //33:20

La aplicación de la función parseInt, se debe a que cualquier valor obtenido de una caja de texto, es una cadena, por lo cual, primero debo de darle un formato numérico para poder operar con esas cifras.

Saludos


muchas gracias por tu respuesta... voy a intentarlo y luego te digo como me fue....