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

180
Vistas
shifumi: ¿estoy en el camino correcto? (codificación js)

Me gustaría probar la codificación sin tutoriales, así que espero que me puedan ayudar... Así que empiezo a escribir el javascript y estoy atascado aquí. ¿Estoy en el camino correcto? No puedo mostrar el mensaje, y cuando hago clic en el botón, parece que no sucede nada (no tengo un mensaje de error ni nada), ¿tal vez sea un problema de sintaxis? no logro solucionar el problema, gracias

Lo que quiero hacer :

  1. crear una función que elija aleatoriamente un elemento de la matriz del juego
  2. cree una función cuando un jugador haga clic en un botón y muestre un mensaje si el usuario gana o pierde...

guión.js

 const game = ["rock", "paper", "scissors"]; // faire apparaitre aléatoirement le rock paper scissors const computer = (aiChoice) => { aiChoice = (Math.random() * game.length) | 0; const result = game[aiChoice]; console.log(result); }; // création fonction player function player(userChoice, aiChoice) { document.getElementById("btn").click(); if (userChoice === "rock" && aiChoice === "rock") { alert("Il ya égalité"); } else alert("ceci est un test"); }

índice

 <h1>Shifumi</h1> <div class="container"> <button id="btn">Pierre</button> <button id="btn">Feuille</button> <button id="btn">Ciseaux</button> </div>
about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Su primer problema es la aleatorización. Echa un vistazo a la siguiente función:

 function getGame(game) { return game[parseInt(Math.random() * game.length)]; } const game = ["rock", "paper", "scissors"]; console.log(getGame(game));

Básicamente, obtienes un número entre 0 y 1 cuando ejecutas Math.random() . Al multiplicarlo por game.length (la cantidad de juegos), se aplica entre el intervalo de [0, game.length]. Obtener el juego en este índice devolverá un juego aleatorio.

Su segundo problema es comparar la elección del usuario con la elección aleatoria:

 const game = ["rock", "paper", "scrissors"]; // faire apparaitre aléatoirement le rock paper scissors const getAIChoice = (game) => { return parseInt(Math.random() * game.length); }; for (let btn of document.getElementsByClassName("btn")) { btn.addEventListener("click", function() { let choice = game.indexOf(this.innerText); let aiChoice = getAIChoice(game); console.log({player: game[choice], ai: game[aiChoice]}); if (((aiChoice + 1) % 3) === choice) alert("You win"); else if (aiChoice === choice) alert("Draw"); else alert("You lose"); }) }
 <h1>Shifumi</h1> <div class="container"> <button class="btn">rock</button> <button class="btn">paper</button> <button class="btn">scrissors</button> </div>

Ahora, he cambiado sus atributos de id a atributos de class , porque usar la misma id para diferentes elementos en el mismo documento no es válido, ya que la id significa identificador y tener el mismo identificador para varios elementos anula el propósito. Luego, agregué un controlador de eventos a cada uno de sus botones que ejecuta una función que toma el texto interno de esos botones como valor, encuentra su posición en game y luego lo compara con un movimiento aleatorio de la computadora. He registrado los resultados para reflejar la situación actual.

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