javascript - 检查一个开关,看看它是否有外壳

标签 javascript switch-statement


这在我正在处理的项目中出现过几次,我如何“测试”一个开关以确定它是否有一个案例而不实际执行它?

如果一定要办案,有没有高效的检查方式?

提前谢谢你。

if (runSwitch(switch.hasCase("casename2"))) {
    alert("I've got it!");
}
else {
    alert("nope");
}

function runSwitch(case) {
    switch (case) { // Any way to skip the function?
        case "casename0" : alert("case"); break;
        case "casename1" : alert("case"); break;
        case "casename2" : alert("case"); break;
        case "casename3" : alert("case"); break;
    }
}

最佳答案

无论您要检查什么情况,无论如何,通过交换机运行它是最佳选择。如果您只想在运行之前检查大小写是否存在,请将它们添加到数组中并检查索引是否存在。

var cases = ['case1', 'case2'];
if (cases.IndexOf('case1') >= 0) {
    // the case is there
}

关于javascript - 检查一个开关,看看它是否有外壳,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13446809/

相关文章:

javascript - 为什么我的 JavaScript switch 语句不起作用?

switch-statement - Swift Switch案例:永远不会执行默认警告

swift - 为什么我不能在 switch 语句中使用元组常量作为 case

使用 CORS 的 Javascript 和 angularjs

javascript - 使用 Facebook Javascript SDK 检查在线用户

javascript - IE8 在 JavaScript/jQuery 中减法错误?

javascript - Glimmer VM 与虚拟 dom 有何不同?

javascript - 访问具有动态名称和动态嵌套级别的对象属性

return - 有什么办法可以解决在 go 中包含无法访问的 return 语句的问题吗?

bash - case 语句中的变量赋值 (bash)