<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<script>
//创建数组,并随机选取一个元素
var words=["javascript","monkey","amazing","pancake"];
var word=words[Math.floor(Math.random()*words.length)];
//定义一个猜测的单词
var answerArray=[];
for(var i=0;i<word.length;i++){
answerArray[i]="_";
}
var remainingLetters=word.length;
//console.log(word);
//console.log(remainingLetters);
while(remainingLetters>0){
alert(answerArray.join(" "));
var guess=prompt("猜一个字母,或者点击取消按钮退出游戏。");
if(guess==null){
break;
}else if(guess.length!==1){
alert("请输入单个字母。");
}else{
//用猜的字母更新游戏状态
for(var i=0;i<word.length;i++){
if(word[i]==guess&&answerArray[i]!==guess){
answerArray[i]=guess;
remainingLetters--;
}
}
}
}
alert(answerArray.join(""));
alert("太棒啦,单词是"+word+"。");
</script>
</body>
</html>
待优化功能如下:(《趣学JavaScript》P108)
- 可以前端自定义输入需要猜的单词;
- 猜词时可以输入大写字母,后台转化为小写字母;
- 限制猜测次数。