Bonjour à tous,
je vous joins le lien d'un bout de code js sur un jeu pierre/feuille/ciseau, je ne comprend pas pourquoi je me retrouve à perdre lorsque je suis censé gagner,
voici le code https://jsfiddle.net/dyk76zp7/1/
merci d'avance![]()
Bonjour à tous,
je vous joins le lien d'un bout de code js sur un jeu pierre/feuille/ciseau, je ne comprend pas pourquoi je me retrouve à perdre lorsque je suis censé gagner,
voici le code https://jsfiddle.net/dyk76zp7/1/
merci d'avance![]()
L'égalité (== ou ===) est toujours fausse, car il y a des espaces blancs dans le nom des boutons.
Il faut utiliser trim() : https://developer.mozilla.org/fr/doc...ux/String/trim
Exemple :
Code HTML : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 <button>Pierre</button> <button>Feuille</button> <button>Ciseaux</button> <div class="resultat"></div>
Code JavaScript : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 const buttons = Array.from( document.querySelectorAll( "button" ) ), resultat = document.querySelector( ".resultat" ); for ( const button of buttons ){ button.addEventListener( "click", ev => { const joueur = ( ev.target.textContent ).trim(), robot = ( buttons[ Math.floor( Math.random() * buttons.length ) ].textContent ).trim(); resultat.textContent = ""; if ( joueur === robot ){ resultat.textContent = `egalité : ${ joueur } === ${ robot }`; } else if ( ( joueur === "Pierre" && robot === "Ciseaux" ) || ( joueur === "Feuille" && robot === "Pierre" ) || ( joueur === "Ciseaux" && robot === "Feuille" ) ) { resultat.textContent = `gagné : ${ joueur } > ${ robot }`; } else { resultat.textContent = `perdu : ${ joueur } < ${ robot }`; } }); }
Blog
Sans l'analyse et la conception, la programmation est l'art d'ajouter des bogues à un fichier texte vide.
(Louis Srygley : Without requirements or design, programming is the art of adding bugs to an empty text file.)
Partager