2017-09-28 9 views
-3

Javascriptで複数のif条件(50+)を効率的に管理できるデザインパターンがありますか?Javascriptの複数のif条件に対する効率的なデザインパターン

更新

私は何をしようとしていることは、特定のパラメータが渡されたときにそれぞれ、すべての定義されたタグ用のHTMLタグを返すことです。したがって、すべての要素を定義する必要があります。たとえば、すべてのHTML要素のために同様に

if ("html"){ 
    return "<html>"; 
} 

ため

+1

ショー

以上を実行されるすべてのケースの後ブレークを入れていることを確認してください

switch (expr) { case 'val one': // execute some code break; case 'val two': // execute some code break; case 'val three': // execute some code break; default: // if nothing is matched execute this code } 

switch文を試すことができます私たちはいくつかのコード!さもなければ、['switch'](https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Instructions/switch)があなたの答えかもしれません:| –

+0

なぜこれらの多くの条件がありますか?パターンはありますか?パターンなしでは、答えは*いいえ*です。 – Bergi

+0

質問を更新しました –

答えて

0

私が実際に気にしている条件でテストする前に、半分のif文のコードが定義されていることがよくあります。やや怠惰なソリューションでは、tryブロックを使用してすべてのテストをスキップできます。参照:

try { 
    // will only run if both objects exist AND obj1 is greater. 
    if (obj1 > obj2) runCode(); 
} 
catch(err) { 
    // do nothing 
} 

はしかし、私はあなたの問題についての詳細を知る必要があるだろう、より良い答えを提供するために。いくつかのコード例を使用して質問を拡張することができれば、私の答えも拡大することができます。

0

あなたはそれ以外のすべてのケースが話題switch - JavaScript | MDN

+0

OPは、彼の条件が同じ値での文字列比較であると述べていませんでした。 – Bergi

+0

@Bergi私は知っている、この場合の文字列は、目的を説明するためのものです。 – Laassari

+0

私の重点は「同じ価値」でした。 'if(a ==" a ")... else if(b ==" b ")...'であってもかまいません。ここで 'switch'は絶対に役に立ちません。 – Bergi

関連する問題