Javascript:How 在满足条件时中断 while 循环,以便在 Var 不为空时终止循环(Break Not Working
Javascript:How to break a while loop when a condition is met to make it so that the loop is terminated when a Var is not null (Break Not Working
var Age;
Age = prompt("How old are you");
while (Age === null){
prompt("Please Cofirm You Name");
if (Age > 0 ){
break;
}
}
我正在努力使用户处于循环中,直到 var Age 不为空...我的目标是使您无法取消提示而不得不输入提示。我试过使用休息时间;在 if 语句中,但它不起作用。
当我使用休息时;在 if 语句中它继续发送提示
还有另一种方法可以做到这一点
还是出于某种原因,var Age 的值是否等于 null(即使您添加了一个大于 0 的整数),如果有人知道如何修复它
有没有更好的方法让用户在提示中输入
先谢谢你
试试 do-while
:
let age, age2;
do {
age = prompt("How old are you?");
} while (age === "");
do {
age2 = prompt("Please Cofirm Your age");
} while (age2 === "" || age2 !== age);
一个while-loop有一个break,看这个简单的例子。
let a = 2;
while (a <100) {
console.log(a);
a *= 2;
if (a===16)
break;
}
var Age = prompt("How old are you?");
Age = Number(Age);
while (isNaN(Age) || Age < 1) {
Age = prompt("Please confirm your age.");
Age = Number(Age);
}
在提示对话框中,用户可以输入任何内容。所以我们试图通过使用 Number(Age) 来查看用户是否输入了一个数字,它试图将用户输入的值解析为一个数字,如果它是一个数字,return 就是一个数字。
这意味着如果用户输入的值是数字,那么年龄将是一个有效数字(但它可能是负数,这对我们的用例来说是无效的)。数字以外的任何值都会给出 NaN 或 0。
因此,当您编写 Age = Number(Age)
、
- 年龄可能被分配一个适当的数字(正数或负数),或者
- NaN(NaN 代表
not a number
,它被认为是一种
JS 中的数据),或
- 0 当用户输入 space(s).
在while循环条件中,我们正在检查用户输入的值是否无效。即 is Age not a number?
或 is Age less than 1?
.
在这两个条件之间使用的||
运算符将returntrue
如果这两个条件中的任何一个为真(事实上,如果第一个条件为真,它不会'甚至懒得去检查第二个条件,只是 return 是真的)。如果两个条件都为假,则 returns false
。
因此,如果用户输入了无效的输入(负数或 space 或字符串),我们会提示用户直到他输入正确的值。
var Age;
Age = prompt("How old are you");
while (Age === null){
prompt("Please Cofirm You Name");
if (Age > 0 ){
break;
}
}
我正在努力使用户处于循环中,直到 var Age 不为空...我的目标是使您无法取消提示而不得不输入提示。我试过使用休息时间;在 if 语句中,但它不起作用。 当我使用休息时;在 if 语句中它继续发送提示 还有另一种方法可以做到这一点 还是出于某种原因,var Age 的值是否等于 null(即使您添加了一个大于 0 的整数),如果有人知道如何修复它 有没有更好的方法让用户在提示中输入
先谢谢你
试试 do-while
:
let age, age2;
do {
age = prompt("How old are you?");
} while (age === "");
do {
age2 = prompt("Please Cofirm Your age");
} while (age2 === "" || age2 !== age);
一个while-loop有一个break,看这个简单的例子。
let a = 2;
while (a <100) {
console.log(a);
a *= 2;
if (a===16)
break;
}
var Age = prompt("How old are you?");
Age = Number(Age);
while (isNaN(Age) || Age < 1) {
Age = prompt("Please confirm your age.");
Age = Number(Age);
}
在提示对话框中,用户可以输入任何内容。所以我们试图通过使用 Number(Age) 来查看用户是否输入了一个数字,它试图将用户输入的值解析为一个数字,如果它是一个数字,return 就是一个数字。
这意味着如果用户输入的值是数字,那么年龄将是一个有效数字(但它可能是负数,这对我们的用例来说是无效的)。数字以外的任何值都会给出 NaN 或 0。
因此,当您编写 Age = Number(Age)
、
- 年龄可能被分配一个适当的数字(正数或负数),或者
- NaN(NaN 代表
not a number
,它被认为是一种 JS 中的数据),或 - 0 当用户输入 space(s).
在while循环条件中,我们正在检查用户输入的值是否无效。即 is Age not a number?
或 is Age less than 1?
.
在这两个条件之间使用的||
运算符将returntrue
如果这两个条件中的任何一个为真(事实上,如果第一个条件为真,它不会'甚至懒得去检查第二个条件,只是 return 是真的)。如果两个条件都为假,则 returns false
。
因此,如果用户输入了无效的输入(负数或 space 或字符串),我们会提示用户直到他输入正确的值。