如何在javascript中创建布尔表达式并使用alert()生成消息?
问题描述:
我正在写一个JavaScript程序,告诉用户他们是否在比赛中获胜。 条件是:女孩的纪录是20秒,男孩的纪录是15秒 假开始是小于0.50秒的任何东西,如果参赛者有错误的开始,那么他们没有赢。 我必须使用prompt()命令来询问他们是否在男孩或女孩中竞争,然后询问他们的得分和反应时间。写一个布尔表达式并用alert()命令创建一条消息,告诉他们是否赢了。 当询问用户参加哪个比赛时,可接受的答案是 “男孩”或“女孩”。到目前为止,我有这个,但我不认为这是完全正确的。如何在javascript中创建布尔表达式并使用alert()生成消息?
var boysRecord = 15;
var girlsRecord = 20;
var falseStart = 0. 50;
var event = prompt("Are you competing in the boys or girls event?");
if (event == "boys" || "girls");
var score = prompt("What is your score?");
} else {
var event = prompt("Are you competing in the boys or girls event?");
var reactionTime = prompt("What is your reaction time?");
if
(event == "boys"; && score > 15; && reactionTime >= 0.5);
{ alert(" You have won");
} else if {
(event = "girls"; && score > 20; && reactionTime >= 0.5);
{ alert(" You have won");
}
else {
alert(" You have lost");
}
答
首先,我建议你缩进你的代码。它更容易阅读,并帮助您跟踪括号。
你有一些错误。您缺少一些括号并且分号太多。
下面是应该工作的代码:
所有的var boysRecord = 15;
var girlsRecord = 20;
var falseStart = 0.50;
var event = prompt("Are you competing in the boys or girls event?");
if (event == "boys" || "girls"){
var score = prompt("What is your score?");
} else {
event = prompt("Are you competing in the boys or girls event?")
}
var reactionTime = prompt("What is your reaction time?");
if(event == "boys" && score > 15 && reactionTime >= 0.5){
alert(" You have won");
} else if(event = "girls" && score > 20 && reactionTime >= 0.5){
alert(" You have won");
} else {
alert(" You have lost");
}
答
首先,卡洛斯提到你的代码是一团糟。
我想你正在尝试做这样的事情。 https://jsfiddle.net/wpjuzjae/8/
注意:在编写第二行之前,请确保您的第一行工作正常。复制粘贴代码块始终不起作用。
好运
var boysRecord = 15;
var girlsRecord = 20;
var falseStart = 0.50;
var score = 0;
var event = prompt("Are you competing in the boys or girls event?");
while (event != "boys" && event != "girls") {
event = prompt("Are you competing in the boys or girls event?");
}
var score = prompt("What is your score?");
var reactionTime = prompt("What is your reaction time?");
if (event == "boys" && score > 15 && reactionTime >= 0.5) {
alert(" You have won");
} else if (event = "girls" && score > 20 && reactionTime >= 0.5) {
alert(" You have won");
} else {
alert(" You have lost");
}
具体什么你认为是错的?控制台中是否有错误? –
逻辑上,如果他们的得分分别低于15和20,他们就不会赢? –
15和20是以前的记录,所以需要获得比这更高的分数才能获胜。 – Natasha