我在切换表达式中使用数学运算符时遇到问题。
这就是我的代码目前的样子:
var x = 18;
var y = 82;
var result = x + y;
switch(result) {
case "200":
document.write("200!");
break;
case "500":
document.write("500!");
break;
case "100":
document.write("100! :)");
break;
default:
document.write("Something's not right..");
}
解释:变量“result”的值为100.我正在尝试将该值与switch运算符一起使用,但它只是不起作用。
我也尝试使用等式本身作为切换表达式,但这也不起作用。
P.S :我刚开始使用JavaScript。打赌我错过了一些明显的东西......
答案 0 :(得分:5)
将“100”更改为100并且有效。 switch必须使用===
的语义,这意味着'类型和值相等'与==
,这将尝试使类型相似,然后进行比较。
编辑 - 这是一个显示正常工作的屏幕截图
答案 1 :(得分:4)
您将数字100
与字符串"100"
进行比较,这是不一样的。试试这个:
var x = 18;
var y = 82;
var result = x + y;
switch(result) {
case 200:
document.write("200!");
break;
case 500:
document.write("500!");
break;
case 100:
document.write("100! :)");
break;
default:
document.write("Something's not right..");
}
答案 2 :(得分:3)
您在案例陈述中使用字符串。拿出引号("
),你应该没问题。