Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

128
Visualizações
¿Las declaraciones if de un solo dígito no funcionan por tiempo (se muestran 4:22:22 en lugar de 04:22:22)?

Tengo este programa simple que toma un tiempo del futuro y crea una cuenta regresiva hasta ese momento:

 var x = setInterval(function() { // Get today's date and time var now = new Date().getTime(); // Find the distance between now and the count down date var distance = Number(String(timerOrigin.innerHTML)+"000") - now; // Time calculations for days, hours, minutes and seconds //Days are not displayed, only used to help calculate hours var days = Math.floor(distance / (1000 * 60 * 60 * 24)); var hours = Math.floor((distance % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60)) + (days * 24); if (hours.length == 1) { hours= "0" + hours; } var minutes = Math.floor((distance % (1000 * 60 * 60)) / (1000 * 60)); if (minutes.length == 1) { minutes= "0" + minutes; } var seconds = Math.floor((distance % (1000 * 60)) / 1000); if (seconds.length == 1) { seconds = "0" + seconds; } // Display the time timer.innerHTML = hours + ":" + minutes + ":" + seconds; // If the count down is finished, Display score if (distance < 0) { clearInterval(x); timer.innerHTML = homeTeamScore.innerHTML + "-" + awayTeamScore.innerHTML; } }, 1000); //Push to Dom sideScore.appendChild(timer)

El problema que tengo es que las declaraciones if de un solo dígito no funcionan.

 var hours = Math.floor((distance % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60)) + (days * 24); if (hours.length == 1) { hours= "0" + hours; }

esto devolverá 4:22:22 mientras que el resultado deseado es 04:22:22. Sé que me estoy perdiendo algo en alguna parte, pero no puedo identificarlo. También realicé algunas pruebas de registro y el programa ni siquiera entra en las declaraciones if. La consola tampoco devuelve errores. ¿Quizás es un problema con el alcance ya que todo esto está dentro de un bucle? Cualquier ayuda es apreciada.

about 4 years ago · Juan Pablo Isaza
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda