在一个 do-while 循环中是否可以有多个 var?

Is it possible to have more than one var in a do-while cycle?

是否可能发生这样的事情,或者我应该将我的周期分成两个不同的 do-while 周期? 因为它不起作用,它只出现一次并停止,当我的任务是不断向用户询问数字和奇数或偶数,直到他把它们给我。我的问题是关于在 do-while 周期

中一次执行两个不同的 var 的可能性
//Data
var userWord;
var userNumber;

// The user choose between odd or even a number between 1 and 5.
do {
    userWord = prompt("Choose odd or even");
    userNumber = parseInt(prompt("Give me a number between 1 and 5"));
} while (userWord.length == 0 && userNumber == 0);

我心目中while的条件是“如果你输入的值是0,所以什么都没有,然后再问这个问题,直到你写点东西。

您需要使用 ||,而不是 &&。当任何子条件为真时,这是真的。只有当 所有 个子条件都为真时,您的条件才会为真。

var userWord;
var userNumber;

// The user choose between odd or even a number between 1 and 5.
do {
  userWord = prompt("Choose odd or even");
  userNumber = parseInt(prompt("Give me a number between 1 and 5"));
} while (userWord.length == 0 || userNumber < 1 || userNumber > 5);
console.log(userWord, userNumber);

如果您为每个输入设置单独的循环,这对用户来说会更好,这样他们就不必在其中一个输入错误时重新输入。

var userWord;
var userNumber;

do {
  userWord = prompt("Choose odd or even");
} while (userWord.length == 0);

do {
  userNumber = parseInt(prompt("Give me a number between 1 and 5"));
} while (userNumber < 1 || userNumber > 5)

console.log(userWord, userNumber);