Что такое правильный / чистый переключатель (или функции в целом) управления потоком? - PullRequest
0 голосов
/ 23 апреля 2019

Я наткнулся на ошибку с моим оператором 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, но без перерывов. Будет запущен регистр "ложь", будет установлен регистр "истина" = истина, тогда будет запущен регистр "истина".

Обе эти опции исправляют это. Что лучше? У вас есть еще лучшее решение?

1 Ответ

0 голосов
/ 23 апреля 2019

Просто используйте оператор if:

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