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

151
Visualizações
Si las declaraciones no se mueven a la declaración else en un juego de azar en JavaScript

Hola, estoy escribiendo prácticamente un juego de azar con JavaScript y, por alguna razón, incluso cuando se da la respuesta correcta, muestra que perdiste. He intentado cambiar las condiciones if pero no soy lo suficientemente versado como para resolverlo. Esta es la primera vez que hago una pregunta aquí. Si necesita más información, le proporcionaré lo que sé y, si ya se ha respondido, no pude encontrarlo o no lo reconocí como la respuesta, como dije. Todavía soy bastante nuevo. en la codificación en general.

este es el html

 <h3>CAN YOU GUESS MY NUMBER!!</h3> <h4>You get two guess and my number is random every time you try. Goodluck!</h4> <input type="text" onkeyup="guessOneCheck(this)" placeholder="enter your guess 1-10" id="guessOne" maxlength="2"> <input type="text" onkeyup="guessTwoCheck(this)" placeholder="enter your guess 1-10" id="guessTwo" maxlength="2"> <button id="submit__Guesses" onclick="bothWrong()">SUBMIT GUESSES</button> <div id="guessAnswer"></div> <script src="main.js"></script>

este es el javascript

 let guessOne = '' let guessTwo = '' const guessOneCheck = (g1) => { guessOne = g1.value console.log(g1.value) } const guessTwoCheck = (g2) => { guessTwo = g2.value console.log(g2.value) } const bothWrong = () =>{ let randomNum = Math.floor((Math.random() *10) + 1); console.log(randomNum) if(guessOne !== randomNum && guessTwo !== randomNum){ document.getElementById('guessAnswer').innerHTML = 'HaHa you lose better luck next time!! My number was' + ' ' + randomNum; } else if(guessOne == randomNum || guessTwo == randomNum){ document.getElementById('guessAnswer').innerHTML = 'What! No you cheated, or omg are you a psychic!!! My number was' + ' ' + randomNum; } }
about 4 years ago · Juan Pablo Isaza
3 Respostas
Responde à pergunta

0

El error aquí es esta línea:

 if (guessOne !== randomNum && guessTwo !== randomNum) {

!== es una verificación estricta que compara tanto el valor como el tipo. Si bien el valor puede ser correcto, el tipo no lo será porque está tomando adivinar uno y adivinar dos de los campos de entrada, lo que significa que son cadenas, mientras que randomNum es del tipo Número. Tienes que convertirlos en números, lo que puedes hacer así:

 const guessOneCheck = (g1) => { guessOne = +g1.value console.log(g1.value) } const guessTwoCheck = (g2) => { guessTwo = +g2.value console.log(g2.value) }

Debería funcionar bien después de eso

about 4 years ago · Juan Pablo Isaza Relatório

0

Tu adivinaUno y adivinaDos son cadenas. Si console.log, verá, por ejemplo, "1" . Necesitas convertir cadena a número usando +guessOne y +guessTwo :

 if(+guessOne !== randomNum && +guessTwo !== randomNum){ document.getElementById('guessAnswer').innerHTML = 'HaHa you lose better luck next time!! My number was' + ' ' + randomNum; } else if(+guessOne == randomNum || +guessTwo == randomNum){ document.getElementById('guessAnswer').innerHTML = 'What! No you cheated, or omg are you a psychic!!! My number was' + ' ' + randomNum; }
about 4 years ago · Juan Pablo Isaza Relatório

0

Hay dos soluciones a este error.

  1. No compare usando '===' o '!=='. También conduce a la verificación de tipo, lo que significa que si el número ingresado es '3' (que es un tipo de cadena) y su comparación será con un número 3 que dará como resultado falso a medida que se realiza la verificación de tipo. En su lugar, use != or ==

  2. Convierta la cadena ingresada en un número antes de la comparación, esto se puede hacer por Number(enteredNumber) o let number = +enteredNumber

about 4 years ago · Juan Pablo Isaza Relatório
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