New*_*bie 5 javascript if-statement switch-statement
我接到了一项任务,我自己几乎已经解决了,但需要进行一些小的更正,我需要有人帮助我指出在哪里对我的代码进行一些外观更改:
这是任务:
将多条件 if 语句示例代码转换为 switch 示例代码。
var myAge = parseInt(prompt("Enter your age", 30), 10);
if (myAge >= 0 && myAge <= 10) {
document.write("myAge is between 0 and 10<br />");
}
if (!(myAge >= 0 && myAge <= 10)) {
document.write("myAge is NOT between 0 and 10<br />");
}
if (myAge >= 80 || myAge <= 10) {
document.write("myAge is 80 or above OR 10 or below<br />");
}
if ((myAge >= 30 && myAge <= 39) || (myAge >= 80 && myAge <= 89)) {
document.write("myAge is between 30 and 39 or myAge is " + "between 80 and 89");
}Run Code Online (Sandbox Code Playgroud)
<DOCTYPE html>
<html lang="en">
<head>
<title>SOME CODE</title>
</head>
<body>
</body>
</html>Run Code Online (Sandbox Code Playgroud)
所以 30 岁以下的默认结果是:
myAge 不在 0 到 10 之间 myAge 在 30 到 39 之间或 myAge 是
80 到 89 之间
这是我到目前为止所做的:
var myAge = parseInt(prompt("Enter your age", 30), 10); // Get the user's response, converted to a number
switch (true) { // Switch statement if the condition is True
case myAge >= 0 && myAge <= 10: // Check the inputs value in range 0 - 10
document.write("myAge is between 0 and 10<br/>");
break;
case (!(myAge >= 0 && myAge <= 10)): // Check the inputs value if it's not a in range between 0 - 10 ( !(myAge >= 0 && myAge <= 10) )
document.write("myAge is NOT between 0 and 10<br/>");
break;
case myAge >= 80 || myAge <= 10: // Check the inputs value if it's greater/equal to 80 OR less/equal to 10
document.write("myAge is 80 or above OR 10 or below<br/>");
break;
default:
document.write("myAge is between 30 and 39 or myAge is " + "between 80 and 89"); // Check the inputs value in range 30 - 39 And 80 - 89
}Run Code Online (Sandbox Code Playgroud)
<DOCTYPE html>
<html lang="en">
<head>
<title>Chapter 3, Example 2</title>
</head>
<body>
</body>
</html>Run Code Online (Sandbox Code Playgroud)
而且,正如您所看到的,结果略有不同。我只打印了这个:
myAge 不在 0 到 10 之间
我知道解决方案很简单,但不幸的是我无法解决它,因此它会打印:
myAge 不在 0 到 10 之间 myAge 在 30 到 39 之间或 myAge 是
以及。
请有人帮助我解决它,我真的很感激它!
嵌套开关盒
var myAge = parseInt(prompt("Enter your age", 30), 10);
switch (true) {
case myAge >= 0 && myAge <= 10:
document.write("myAge is between 0 and 10<br/>");
default:
switch (true) {
case (!(myAge >= 0 && myAge <= 10)):
document.write("myAge is NOT between 0 and 10<br/>");
default:
switch (true) {
case myAge >= 80 || myAge <= 10:
document.write("myAge is 80 or above OR 10 or below<br/>");
default:
switch (true) {
case (myAge >= 30 || myAge <= 39) || (myAge >= 80 && myAge <= 89):
document.write("myAge is between 30 and 39 or myAge is " + "between 80 and 89");
}
}
}
}Run Code Online (Sandbox Code Playgroud)
理由:
| 归档时间: |
|
| 查看次数: |
3012 次 |
| 最近记录: |