这是一个简单的JS示例,可行,我正在努力改善"它有点 我是JS的初学者,我希望我不会在这里踩到我的脑袋。
$items
我想要做的是不允许第二个提示出现,直到第一个提示正确(准确)输入(即黄色,红色,蓝色),无论用户输入多少次&#34 ;错误"值。
我知道我必须使用"而#34;但我不知道怎么做。用不同的方法尝试了几次,但没有设法得到理想的结果
还尝试了一些具有类似问题的线程,但无法找到解决此特定问题的方法。
任何帮助或建议都非常受欢迎
谢谢。
答案 0 :(得分:2)
使用while循环,如下所示
class Elipse
{
// as you defined
};
class Circle
{
// As you defined
explicit operator Ellipse()
{
Point lower_left, upper_right;
// calculate the two points
return Ellipse(lower_left, upper_right);
}
};
答案 1 :(得分:0)
试试这个:
var valid_colors = ['yellow', 'red', 'blue'];
var color1;
var color2;
color1 = prompt("Enter first color: yellow, red or blue");
while (!~valid_colors.indexOf(color1)) {
color1 = prompt("Enter first color: yellow, red or blue");
}
color2 = prompt("Enter second color: yellow, red or blue");
while (!~valid_colors.indexOf(color2)) {
color2 = prompt("Enter second color: yellow, red or blue");
}
//... continue with your code
答案 2 :(得分:0)
我会这样做:
var allowedColors = ['yellow', 'red', 'blue']; //we create array of valid input
var color1 = ''; // initial value is not correct, so user is prompted at least once.
var color2 = '';
while(allowedColors.indexOf(color1) === -1){
color1 = prompt("Enter first color: yellow, red or blue");
}
while(allowedColors.indexOf(color2) === -1){
color2 = prompt("Enter second color: yellow, red or blue");
}
答案 3 :(得分:0)
使用while循环,也可以使函数更多次使用
function getUserInput(n) {
let color;
while (!(color=="red" || color=="yellow" || color=="blue")) {
color=prompt("Enter "+n+". color (red, yellow or blue):");
}
return color;
}
var c1=getUserInput(1),
c2=getUserInput(2);