2

IfJavascriptの条件の上限はありますか? 次の方法を使用して、区分「b」の爆弾を検出しています。ただし、3 つまたは 4 つ以上の条件をスキップするため、実際のカウントよりも爆弾カウントが少なくなります。

div bwhereをクリックするとすぐに、次の関数がトリガーされますb = some number。すべてのセルで爆弾をチェックするKwhereがあり、爆弾のあるセルが位置基準を満たす場合、爆弾数が1増加します。

    var i = 1;
    var p1 = b-1;
    var p2 = b+1;
    var p3 = b+6;
    var p4 = b-6;
    var p5 = b-5;
    var p6 = b+5;
    var p7 = b-7;
    var p8 = b+7;
    var bombcount = 0;

    while(i<37)
    {
        var check = document.getElementById(i).value;
        if (check == "explode" && b>6 && b<31) {
            if(i==p1 || i==p2 || i==p3 || i==p4 ||
               i==p5 || i==p6 || i==p7 || i==p8) {

               bombcount++
            };
        }
        i++;
    }
4

3 に答える 3

3

いいえ、if-elseステートメントの数に制限はありません。ステートメントが 1 つずつ続く場合でも、ネストされた if-else ループでも構いません。また、if ステートメントで使用できる条件の数に制限はありません。

しかし、そのようなswitch場合に使用することをお勧めします。読みやすさとパフォーマンスが向上します。

スイッチの構文については、 https: //developer.mozilla.org/en-US/docs/JavaScript/Reference/Statements/switch を参照してください。

値の範囲でスイッチを使用するには、この以前の投稿を参照してください Switch statement for greater-than/less-than

于 2013-04-18T10:45:44.980 に答える