什么是正确/干净的Switch(或一般功能)控制流程?

时间:2019-04-22 23:25:29

标签: javascript switch-statement

我偶然发现我的switch语句有一个错误(两个案例),其中两个案例都运行了,因为前者使后者成立。我找到了两种解决方案,但是我不知道应该使用哪种解决方案,或者是否应该将两者结合使用。

我最初的想法只是在每个案例的末尾添加休息时间。但是我的同事建议我调换订单,因为后者不能以这种方式干扰前者。也许我两者都应该做?我认为一眼就可以清楚地看到休息时间,但是交换它们很优雅。 您希望从同事那里看到什么?

**---OPTION 1---**
var created = false;
function clicker(){
    switch(created){
        case false:
            **some code**
            created = true;
            break;
        case true:
            **some code**
            break;
    }
}

**---OPTION 2---**
var created = false;
function clicker(){
    switch(created){
        case true:
            **some code**
        case false:
            **some code**
            created = true;
    }
}

最初,我运行选项1,但没有中断。情况为“假”将运行,情况为“ true” = true,然后情况将为“ true”。

这两个选项均可解决。哪个更好?您有更好的解决方案吗?

1 个答案:

答案 0 :(得分:0)

只需使用if语句:

function clicker() {
    if (created) {
        //Some code
    } else {
        //Some code
        created = true;
    }
}