基本的な絞首刑執行人のゲームがあります。動作しているようですが、正しく動作するように文字の推測を重複させることはできません。現在、バンクには「ポップコーン」と「リンゴ」の2つの単語しかありません。初めてリンゴの "p"を推測すると、最初のpで塗りつぶされますが、2番目のpで塗りつぶされません。文字列の重複する文字を置き換える方法 - Javascript
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Hangman!</title>
</head>
<body>
<h1>Hangman</h1>
<h2>Press a letter to guess.</h2>
<div id="secret"> </div>
<script>
var computerChoices = ['apples', 'popcorn'];
var progress = "";
// This chooses a word from the set randomly.
var secretWord = computerChoices[Math.floor(Math.random() * computerChoices.length)];
for (i=0; i < secretWord.length; i++){
progress += "_";
}
// When the user presses the key it records the keypress and then sets it to userguess
document.onkeyup = function(event) {
var letter = String.fromCharCode(event.keyCode).toLowerCase();
if (secretWord.indexOf(letter) > -1){
console.log("Good Guess!");
index = secretWord.indexOf(letter);
progress = progress.substr(0, index) + letter + progress.substr(index + 1);
// Placing the html into the secret ID
document.querySelector('#secret').innerHTML = progress;
if ((/([a-zA-Z]).*?\1/).test(secretWord)) {
console.log("Yep, there's a duplicate here")
}}else{
console.log ("Eeeeeennnnnghh! Wrong! Try again dumbassss!");
}
}
</script>
</body>
</html>