0

私は同僚が書いた JavaScript を見ていますが、両方の句で同じように見えると思います:

function doSubmitOversikt(action, command, status) {

    var checked = document.getElementById("klarbox").checked;

    if(status && !checked) {

        if (confirm("Ärendet är satt som Klar (formell handläggning första delen klar). Vill du verkligen ångra detta? Att ångra kan innebära att ärendet behöver arras om i CICS.")) {

            document.actionForm.action.value = action;
            document.actionForm.actionCommand.value = command;  
            document.actionForm.submit();
            disableAll();

        }
    } else {

        document.actionForm.action.value = action;
        document.actionForm.actionCommand.value = command;  
        document.actionForm.submit();
        disableAll();
    }

}

上記のコードと無条件に行うことの違いは何ですか

    document.actionForm.action.value = action;
    document.actionForm.actionCommand.value = command;  
    document.actionForm.submit();
    disableAll();

?

4

3 に答える 3

5

いいえ、同じではありません。と の両方が truestatusと評価された場合、ユーザーは確認しません。!checked何も起こりません。

ただし、そのようにするとDRY 原則に違反することに注意してください。

于 2012-08-22T07:59:48.150 に答える
1

ステータスがtrueでチェックされていない場合は確認を求められ、それ以外の場合は何もしないという条件は1つではないと思います。ステータスがtrueでない場合、またはステータスがチェックされている場合は、そうします。

于 2012-08-22T08:03:07.933 に答える
1

最初のループは、確認が肯定的である場合にのみ実行されます。チェックボックスがチェックされておらずstatus、真の値である場合。

于 2012-08-22T08:00:37.940 に答える