Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

214
Vistas
¿Cómo debo convertir la salida de minutos a formato HH:MM?

El código es simple, soy muy nuevo en la programación. Pones los puntos que necesitas y el resultado del juego y la salida son los minutos de juego necesarios para los puntos.

Funciona, mi pregunta es ¿cómo debo convertir la salida para que esté en formato HH: MM? Probé los ciclos if/else, pero es mucho trabajo, sin mencionar que es muy primitivo y codificado. ¿Son los ciclos la respuesta? ¿Debo empezar desde el principio por completo?

¡Gracias de antemano!

 function passPoints(input) { let gameResult = String(input[0]); let pointsNeeded = Number(input[1]); let pointsPerMinute = 0; if (gameResult == 'w') { pointsPerMinute = 6; } else if (gameResult == 'l') { pointsPerMinute = 4; } let minutesOfGameplayNeeded = pointsNeeded / pointsPerMinute; console.log(minutesOfGameplayNeeded) }
about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Así es como lo abordaría. Usando módulo y dividiendo por 60 para obtener h:m

 // as a helper function const getTimeReadout = m => { let a = [Math.floor(m / 60), Math.floor(m % 60)] return a.map(t => ('0' + t).slice(-2)).join(':') }

Aquí está integrado en su código:

 function passPoints(input) { let gameResult = String(input[0]); let pointsNeeded = Number(input[1]); let pointsPerMinute = 0; if (gameResult == 'w') { pointsPerMinute = 6; } else if (gameResult == 'l') { pointsPerMinute = 4; } let m = pointsNeeded / pointsPerMinute let minutesOfGameplayNeeded = [Math.floor(m / 60), Math.floor(m % 60)]; // now it's in an array so we can iterate it below (adding the zero if needed) minutesOfGameplayNeeded = minutesOfGameplayNeeded.map(t => ('0' + t).slice(-2)).join(':') console.log(minutesOfGameplayNeeded) } passPoints(['w', 427]);

Lo mismo, pero optimicé un poco tu código:

 function passPoints(input) { [gameResult, pointsNeeded] = input let pointsPerMinute = gameResult == 'w' ? 6 : gameResult == 'l' ? 4 : 0; let m = pointsNeeded / +pointsPerMinute; return [Math.floor(m / 60), Math.floor(m % 60)].map(t => ('0' + t).slice(-2)).join(':') } console.log(passPoints(['w', 427]));

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda