我有一个不起作用的switch case语句。我检查了输入,它是有效的。如果user为1,则为默认值。如果用户是任何号码,则默认为。这有什么不对?我根本不懂javascript。
switch (user) {
case 1:
// stuff
break;
case 2:
// more stuff
break;
default:
// this gets called
break;
}
答案 0 :(得分:22)
确保没有混合字符串和整数 试试:
switch (user) {
case "1":
// stuff
break;
case "2":
// more stuff
break;
default:
// this gets called
}
答案 1 :(得分:10)
问题是数据类型不匹配。将
答案 2 :(得分:5)
将用户变量的类型转换为整数
switch (+user) {
case 1: .. //
}
答案 3 :(得分:3)
Javascript是类型感知的。因此'1'与1不同。在您的情况下,“user”必须是数字,而不是字符串。你可以通过以下方式施放它:
user = Number(user)