以前のジャンケンゲームのソースコードが長かったので見やすいものにするために条件分岐も短くしたいです。
HTML上に結果が表示されませんでした。function judgeに問題あると思うのですがご指導よろしくお願いします。
HTML
1<!DOCTYPE html> 2<html> 3 <head> 4 <title>JavaScript</title> 5 <meta charset="UTF-8"> 6 </head> 7 <body> 8 <p>相手</p> 9 <img id='imageArea'> 10 <br> 11 <img id="you" onclick="janken(goo)" src="../../images/js_goo.png" alt="グ-の画像"> 12 <img id="you" onclick="janken(choki)" src="../../images/js_choki.png" alt="チョキの画像"> 13 <img id="you" onclick="janken(paa)" src="../../images/js_paa.png" alt="パーの画像"> 14 <p id="msg"></p> 15 <script type="text/javascript" src="../js/janken.js"></script> 16 17</html> 18
JavaScript.
var goo = 0; var choki = 1; var paa = 2; var draw = "あいこ"; var win = "勝利"; var loss = "敗北"; function janken(myHand){ const imageArea = document.getElementById('imageArea'); const images = ['../../images/js_goo.png','../../images/js_choki.png','../../images/js_paa.png']; const imageNo = Math.floor( Math.random() * images.length ); imageArea.src = images[imageNo]; const result = judge( imageNo, myHand ); dspjudge( result ); } function judge(){ if (result === 0) { return draw; } else if (result === 1) { return win; } else { return loss; } } function dspjudge(jge){ if ( jge == draw ) { message("あいこ"); return; } if ( jge == win ) { message("勝利"); return; } if ( jge == loss ) { message("敗北"); return; } } function message(text){ var elm; elm = document.getElementById("msg"); elm.innerHTML = text; }
あなたの回答
tips
プレビュー