JavaScript の if ステートメント内に複数の条件を指定する

Sahil Bhosale 2023年10月12日
  1. JavaScript の if ステートメント内に論理演算子を使用して乗算条件を追加する
  2. JavaScript の if ステートメント内で論理積演算子と論理和演算子を組み合わせて使用​​する
JavaScript の if ステートメント内に複数の条件を指定する

プログラミングでは、特定の条件が満たされたときにコードを実行する場合、そのような場合は、if ステートメントと呼ばれるものを使用します。整数の配列があり、その数が 20 と言っているかどうかを配列内に存在するかどうかを確認したいとします。これを行うには、次のように if ステートメント内に条件を追加します。

var arr = [5, 25, 70, 62, 20, 89];

arr.forEach(num => {
  if (num == 20) {
    // do something
  }
})

これは、if ステートメント内に 1つの条件のみを追加した例です。ただし、本番環境に対応したソフトウェアを作成しているときに、if ステートメントに複数の条件を渡さなければならない場合があります。そして、条件の結果(true または false)に基づいて、適切なコードを実行できます。ここで、複数の条件を含む if ステートメントの記述方法を理解しましょう。

JavaScript の if ステートメント内に論理演算子を使用して乗算条件を追加する

if ステートメント内にさまざまな条件を追加するために、論理演算子を使用します。JavaScript には 4つの論理演算子があり、そのうち 2つの論理演算子 AND(&&)と OR(||)を使用します。これらの 2つの演算子は、if ステートメント内のさまざまな条件を分離するのに役立ちます。これらの演算子がどのように機能し、どのように使用するかを見てみましょう。

  • 論理積 (&&)

論理積 (&&)演算子は、条件が多数ある場合にこのように機能し、条件のいずれかが false の場合、全体的な結果は false になります。詳細については、以下の真理値表を参照してください。

論理積演算子の真理値表:

A B A && B
True True True
True False False
False True False
False False False

例:

var arr = [5, 25, 70, 62, 20, 89];

arr.forEach(num => {
  if (num == 20 && num % 2 == 0) {
    console.log(num);
  }
})

出力:

20

この例では、if ステートメント内に 2つの条件があります。最初の条件は、配列の現在の番号が 20 であるかどうかをチェックします。条件が成立する場合は true を返し、そうでない場合は false を返します。2 番目の条件は、配列の現在の数が偶数であるかどうかをチェックします。そして、それが正しければ、それはになり、そうでなければになります。

この場合、&&演算子を使用しているため、if ステートメント内に入力するには、if ステートメント内の両方の条件が成立する必要があります。ここでは、配列の数 20 の場合のみ、数 2020 に等しいため、これらの条件の両方が当てはまります。また、20%2 は出力として 0 を提供します。

  • 論理和(||

論理和(||)演算子は、条件が多数ある場合にこのように機能し、条件のいずれかが true の場合、全体的な結果は true になります。

論理和演算子の真理値表:

| A | B | A || B |
| ——- | ——- | :—–: |
| True | True | True |
| True | False | True |
| False | True | True |
| False | False| False |

例:

var arr = [5, 25, 70, 62, 20, 89];

arr.forEach(num => {
  if (num == 20 || num % 2 == 0) {
    console.log(num);
  }
})

出力:

70
62
20

論理和演算子については、論理積演算子について見たのと同じ例を使用しましたが、&&の代わりに||を使用しました。オペレーター。演算子を変更するだけで出力がどのように変化したかに注目してください。これは、数が 7062、および 20 の場合、2 番目の演算子が 3 回 true になるためです。

JavaScript の if ステートメント内で論理積演算子と論理和演算子を組み合わせて使用​​する

if ステートメント内でこれらの演算子を組み合わせて使用​​しなければならない状況がいくつかあります。次の例は同じことを示しています。

var arr = [5, 25, 70, 62, 20, 89];

arr.forEach(num => {
  if ((num != 20 && num % 2 == 0) || (num > 50) && (num < 100)) {
    console.log(num);
  }
})

出力:

70
62
89

ここでは、if ステートメント内に 3つの条件があります。最初の条件は、それ自体が 2つの条件の組み合わせです。最初の条件が true であるためには、&&演算子があるため、内側の 2つの条件 num != 20num%2 == 20 も true である必要があります。次に、数値が 50 より大きいかどうかを確認するための 2 番目の条件があります。そして 3 番目の条件は、その数が 100 未満であるかどうかをチェックすることです。

||があることに注意してください 1 番目と 2 番目の条件の間の演算子と 2 番目と 3 番目の条件の間の&&演算子。演算子の優先順位によると、&&演算子は||よりも優先順位が高くなります。オペレーター。したがって、2 番目と 3 番目の条件が最初に評価され、次にこの結果が最初の条件で評価されます。演算子の優先順位の詳細については、この MDNdocs にアクセスしてください。

単一の if ステートメントを使用するだけでなく、if and else if ステートメントと呼ばれるものを使用することもできます。これにより、それぞれが異なる条件を持つ複数の if ステートメントを追加でき、これらのコードブロックのそれぞれが異なるコードを実行できます。以下のコードスニペットはこれを示しています。

var arr = [5, 25, 70, 62, 20, 89];

arr.forEach(num => {
  if ((num > 50) && (num < 100)) {
    console.log('The number is in the range of 20 to 100.');
  } else if (num != 20 && num % 2 == 0) {
    console.log('The number 20 is divisible by 2.')
  } else if ((num < 50) || (num == 5)) {
    console.log('The number is less than 50.')
  }
})

出力:

The number is less than 50.
The number is less than 50.
The number is in the range of 20 to 100.
The number is in the range of 20 to 100.
The number is less than 50.
The number is in the range of 20 to 100.

ここでは、if およびさまざまな else if ステートメントを追加しました。それぞれに複数の条件が含まれています。これで、配列内に存在する数に応じて、3つの条件のいずれかが満たされ、その特定のコードブロック内のコードが実行されます。

著者: Sahil Bhosale
Sahil Bhosale avatar Sahil Bhosale avatar

Sahil is a full-stack developer who loves to build software. He likes to share his knowledge by writing technical articles and helping clients by working with them as freelance software engineer and technical writer on Upwork.

LinkedIn