标题:韩元';甚至在带有嵌入式javascript的HTML刽子手游戏中都没有显示
我一辈子都搞不懂为什么这个网页连html的标题都不显示。我这里列出了整个文件。我是javascript和html的初学者,但我认为我了解函数的工作原理。显然我没有。根据JSLint的说法,第一个“for”循环似乎有问题。代码如下:标题:韩元';甚至在带有嵌入式javascript的HTML刽子手游戏中都没有显示,javascript,html,Javascript,Html,我一辈子都搞不懂为什么这个网页连html的标题都不显示。我这里列出了整个文件。我是javascript和html的初学者,但我认为我了解函数的工作原理。显然我没有。根据JSLint的说法,第一个“for”循环似乎有问题。代码如下: <!DOCTYPE html> <html> <head> <title>Hangman!</title> </head> <body> <header> <h1
<!DOCTYPE html>
<html>
<head>
<title>Hangman!</title>
</head>
<body>
<header>
<h1>Hangman!</h1>
</header>
<script>
var words = [
"javascript",
"monkey",
"amazing",
"pancake"
];
var pickWord = function() {
// Return a random word
var word = words[Math.floor(Math.random() * words.length)];
return word;
};
var setupAnswerArray = function(word) {
// Return the answer array
var answerArray = [];
for (var i = 0; i < word.length; i++) {
answerArray[i] = "_";
return answerArray;
};
};
var showPlayerProgress = function (answerArray) {
// Use alert to show the player their progress
alert(answerArray.join(" "));
};
var getGuess = function() {
// Use prompt to get a guess
var guess = prompt("Guess a letter, or click Cancel to stop playing.");
if (guess === null) {
// Exit the game loop
break;
} else if (guess.length !== 1) {
alert("Please enter a single letter.");
};
};
var updateGameState() = function (guess, word, answerArray) {
// Update the answerArray and return a number showing how many times the guess appears in the word
// so remainingLetters can be updated
guess = prompt("Guess a letter, or click Cancel to stop playing.");
for (var j = 0; j < word.length; j++) {
if (word[j] === guess) {
answerArray[j] = guess;
remainingLetters--;
};
};
};
var showAnswerAndCongratulatePlayer = function (answerArray) {
// Use alert to show the answer and congratulate the player
alert(answerArray.join(" "));
alert("Good job! The answer was " + word);
};
var word = pickWord();
var answerArray = setupAnswerArray(word);
var remainingLetters = word.length;
while (remainingLetters > 0) {
showPlayerProgress(answerArray);
var guess = getGuess();
if (guess === null) {
break;
} else if (guess.length !== 1) {
alert("Please enter a single letter.");
} else {
var correctGuess = updateGameState(guess, word, answerArray);
remainingLetters -+ correctGuess;
};
};
showAnswerAndCongratulatePlayer(answerArray);
</script>
</body>
</html>
刽子手!
刽子手!
变量字=[
“javascript”,
“猴子”,
“太棒了”,
“煎饼”
];
var pickWord=函数(){
//返回一个随机字
var word=words[Math.floor(Math.random()*words.length)];
返回词;
};
var setupAnswerArray=函数(字){
//返回应答数组
var answerArray=[];
for(变量i=0;i0){
showPlayerProgress(应答器阵列);
var guess=getGuess();
如果(猜测===null){
打破
}else if(guess.length!==1){
警告(“请输入一个字母”);
}否则{
var correctGuess=updateGameState(猜测、单词、应答数组);
剩余单体-+正确猜测;
};
};
显示应答器和祝贺器(应答器阵列);
您的代码中有一些错误。将varupdateGameState()=函数(guess,word,answerArray).
更改为var updateGameState=函数(guess,word,answerArray).
更改
中断代码>在var getGuess=function()
到返回代码>因为没有循环。您的代码中有一些错误。将varupdateGameState()=函数(guess,word,answerArray).
更改为var updateGameState=函数(guess,word,answerArray).
更改中断代码>在var getGuess=function()
到返回代码>因为没有循环。if块后不需要分号。getGuess没有返回语句,因此返回未定义的。if块后不需要分号。getGuess没有返回语句,因此返回未定义的。