Javascript 刽子手同一个字母不能再次使用
我试图运行一个程序,让用户通过键入字母来猜单词。同一字母不允许输入两次。我想把输入的每个字母都存储在一个列表中,然后我会在列表中循环,根据用户输入检查每个元素。如果输入两次,将出现“重试”等错误消息。这就是我目前所拥有的Javascript 刽子手同一个字母不能再次使用,javascript,Javascript,我试图运行一个程序,让用户通过键入字母来猜单词。同一字母不允许输入两次。我想把输入的每个字母都存储在一个列表中,然后我会在列表中循环,根据用户输入检查每个元素。如果输入两次,将出现“重试”等错误消息。这就是我目前所拥有的 var x = ["Football", "Pie", "Red", "Amber", "Purple", "Blue"];
var x = ["Football", "Pie", "Red", "Amber", "Purple", "Blue"];
var y = x[Math.floor(Math.random() * x.length)].toLowerCase();
var answerArray = [];
var lettersUsed = [];
var numberOfGuesses = 10;
for (var i = 0; i < y.length; i++)
{
answerArray[i] = "_";
}
var remainingLetters = y.length;
while (remainingLetters > 0 && numberOfGuesses > 0)
{
console.log(answerArray.join(" "));
var guess = prompt("Guess a letter\n");
if (guess === null)
{
console.log("Game over");
break;
}
else if (guess.length !== 1)
{
console.log("Enter a single letter\n");
}
else
{
numberOfGuesses--;
lettersUsed.push(guess);
for (var j = 0; j < y.length; j++)
{
if (y[j] === guess.toLowerCase() && answerArray[j] === "_")
{
answerArray[j] = guess.toLowerCase();
remainingLetters--;
}
}
}
}
console.log(answerArray.join(" "));
if (numberOfGuesses > 0)
{
console.log("Well done! You've won! Your stick guy has been saved!\n");
}
else
{
console.log("Game over! The word was " + y);
}
///console.log(lettersUsed);
var x=[“足球”、“馅饼”、“红色”、“琥珀色”、“紫色”、“蓝色”];
变量y=x[Math.floor(Math.random()*x.length)].toLowerCase();
var answerArray=[];
var lettersUsed=[];
var numberOfGuesses=10;
对于(变量i=0;i0&&numberOfGuesses>0)
{
console.log(answerArray.join(“”);
var guess=提示(“猜一个字母\n”);
如果(猜测===null)
{
控制台日志(“游戏结束”);
打破
}
else if(guess.length!==1)
{
console.log(“输入一个字母\n”);
}
其他的
{
无数猜测--;
字母使用。推(猜);
对于(var j=0;j0)
{
console.log(“干得好!你赢了!你的棍子被救了!\n”);
}
其他的
{
log(“游戏结束!单词是“+y”);
}
///控制台日志(使用字母);
如何编写for循环?任何帮助都将不胜感激。您可以使用
数组。includes(item)
方法。如果项目在数组中,它将返回true
。例如:
lettersUsed=['a','b','c'];
设newLetter='b';
如果(字母使用包括(新字母)){
console.log(“已使用的字母”);
}否则{
console.log(“尚未使用的字母”);
}
编辑以回答OP提出的问题:
检查输入长度后,可以添加以下内容:
else if(guess.length!==1)
{
console.log(“输入一个字母\n”);
}
否则,如果(使用的字母包括(猜测))
{
console.log(“已使用的字母”);
}
其他的
{
无数猜测--;
您可以使用数组。includes(item)
方法。如果项目在数组中,它将返回true
。例如:
lettersUsed=['a','b','c'];
设newLetter='b';
如果(字母使用包括(新字母)){
console.log(“已使用的字母”);
}否则{
console.log(“尚未使用的字母”);
}
编辑以回答OP提出的问题:
检查输入长度后,可以添加以下内容:
else if(guess.length!==1)
{
console.log(“输入一个字母\n”);
}
否则,如果(使用的字母包括(猜测))
{
console.log(“已使用的字母”);
}
其他的
{
无数猜测--;
谢谢在我的代码中我将把if语句放在哪里?谢谢在我的代码中我将把if语句放在哪里?如果问题得到了充分的回答,请不要试图删除它-您可以将答案标记为“已接受”如果问题回答充分,请不要试图删除该问题-您可以将答案标记为“已接受”以表示接受。