我有一个switch case语句,但它不起作用。我已经检查了输入,它是有效的。如果用户是1,则跳转到默认情况。如果用户是任何数字,它都会默认。这里出了什么问题?我对javascript一点也不了解。
switch (user) {
case 1:
// stuff
break;
case 2:
// more stuff
break;
default:
// this gets called
break;
}
我有一个switch case语句,但它不起作用。我已经检查了输入,它是有效的。如果用户是1,则跳转到默认情况。如果用户是任何数字,它都会默认。这里出了什么问题?我对javascript一点也不了解。
switch (user) {
case 1:
// stuff
break;
case 2:
// more stuff
break;
default:
// this gets called
break;
}
确保您不要混合使用字符串和整数。
尝试:
switch (user) {
case "1":
// stuff
break;
case "2":
// more stuff
break;
default:
// this gets called
}
default
not necessary break
- KingRider问题是数据类型不匹配。将用户的类型转换为整数。
将用户变量的类型转换为整数
switch (+user) {
case 1: .. //
}
Javascript是类型感知的。所以'1'和1不相同。在你的情况下,“user”必须是数字,而不是字符串。你可以通过以下方式强制转换它:
user = Number(user)
user
еҢ…еҗ«д»Җд№ҲпјҹжҳҜдёҖдёӘеҜ№иұЎ
иҝҳжҳҜдёҖдёӘж•ҙж•°
пјҹ - user278064switch(~~user)
。 - KingRider