JavaScript,一个询问特定答案的循环

Chr*_*kai 1 javascript

我希望用户输入1-100之间的数字,直到用户输入有效数字,循环将继续说"输入无效".

我的代码如下.我哪里做错了?

// Initialize var userGuess
var userGuess;

// I want to make the prompt keep asking a number between 1-100, if it doesn't satisfy the requirement, it will keep asking
for (var valid = false; valid == true;) {
    userGuess = prompt("Guess a number");
    if ((userGuess >= 1) && (userGuess <= 100)) {
        valid = true;
    } else {
        valid = false;
        console.log("That number is invalid! Please enter a number between 1-100");
    }
}
Run Code Online (Sandbox Code Playgroud)

raf*_*lio 5

// Initialize var userGuess
var userGuess;

// I want to make the prompt keep asking a number between 1-100, if it doesn't satisfy the requirement, it will keep asking
var valid = false;
while(!valid){
    userGuess = prompt("Guess a number");
    if ((userGuess >= 1) && (userGuess <= 100)) {
        valid = true;
    } else {
        console.log("That number is invalid! Please enter a number between 1-100");
    }
}


// Initialize var userGuess
var userGuess;
Run Code Online (Sandbox Code Playgroud)

带有for循环

// I want to make the prompt keep asking a number between 1-100, if it doesn't satisfy the requirement, it will keep asking
for(var valid = false; !valid){
    userGuess = prompt("Guess a number");
    if ((userGuess >= 1) && (userGuess <= 100)) {
        valid = true;
    } else {
        console.log("That number is invalid! Please enter a number between 1-100");
    }
}
Run Code Online (Sandbox Code Playgroud)