根据数组检查输入变量

Checking input variables against array

本文关键字:输入 变量 检查 数组      更新时间:2023-09-26

正在尝试根据我的数组(sportsArray)检查输入变量(sGuess)...

var 名称工作正常

然后,当我让它检查用户针对数组(sportsArray)输入的变量(sGuess)时,我总是在控制台中得到以下内容。循环 1 返回 NaN循环 2 返回未定义循环 3 完美返回其输入

我正在使用以下JavaScript代码

  var sportsArray = new Array("Football", "Basketball", "Rollerblading", "Hiking", "Biking", "Swimming");
  var name;
  var score;
  var loops;
  var sGuess;
// prompts for user name, checks input.
do {
name = prompt("Enter your first name");
}
while (name == "");

// loop for guesses.
for (var i = 1; i <4; i++) {
// prompts user for guess.
sGuess = prompt("Enter your sports guess");

if(sportsArray.indexOf(sGuess) == -1) {
    alert("Sorry! Guess Again.");
    score -= 5;
}
else {
    alert("You are good, try it again!");
    score += 5;
}
 }

如何修复循环 1 和 2 返回错误?

嘿 你必须先初始化一个变量:

var sportsArray = new Array("Football", "Basketball", "Rollerblading", "Hiking", "Biking", "Swimming");
var name;
var score;
var loops;
var sGuess;
// prompts for user name, checks input.
do {
 name = prompt("Enter your first name");
}
while (name == "");
// loop for guesses.
for (var i = 1; i < 4; i++) {
 // prompts user for guess.
 sGuess = prompt("Enter your sports guess");
var s = sportsArray.indexOf(sGuess);
 if (s == -1) {
   alert("Sorry! Guess Again.");
   score -= 5;
 } else {
   alert("You are good, try it again!");
   score += 5;
 }
}