JavaScript の式ベースの switch case
JavaScript では、switch-case ステートメントは、特定の条件に基づいて複数のケースを処理する便利な方法を提供します。価値。ただし、従来の switch-case ステートメントでは、文字列または整数値を比較する必要があります。特定のシナリオでは、比較中に評価される式を使用することが望ましい場合があります。
問題が発生しました
そのようなシナリオの 1 つは、課題に遭遇したユーザーによって説明されています。 switch-case ステートメント内で式を使用しようとしました:
<code class="javascript">switch (amount) { case (amount >= 7500 && amount < 10000): // Code break; // Other cases default: // Default code }
ただし、このコードでは予期しない動作が発生し、switch-case ステートメントで式を使用できるかどうかという疑問が生じました。
問題の解決
この問題は、amount 変数が数値であるのに対し、case 句の式はブール値 (つまり、true または false) に評価されるという事実から発生します。 )。その結果、値が一致せず、case 句内のコードが実行されなくなります。
これを解決するには、式を true ステートメントで囲むことが 1 つの方法です。
<code class="javascript">switch (true) { case (amount >= 7500 && amount < 10000): // Code break; // Other cases default: // Default code }</code>
比較される値がブール値 true になっているため、これは機能します。その結果、true と評価される式を含む最初の case 句の下のコードが実行されます。
考慮事項
この手法では switch- で式を使用できます。 case ステートメントは注意して使用する必要があります。特定のシナリオでは、if-else ステートメントの方が簡潔で読みやすい場合があります。最終的に、switch-case ステートメントと if-else ステートメントのどちらを選択するかは、コードの特定の要件によって異なります。
以上がJavaScript の switch-case ステートメントで式を使用できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。