【JavaScript】AND条件とOR条件の違いを実例で解説

JavaScriptでプログラムを作るとき、条件によって処理を分けることがよくあります。
その際によく使うのが「AND条件(&&)」と「OR条件(||)」という論理演算子です。

このページでは、複数の条件を組み合わせて判定するANDとORの違いを、具体的な実例コードを使ってわかりやすく解説します。
初心者の方でも理解しやすいように配列を使ったサンプルコードで説明しているので、ぜひ参考にしてください。

コード

const person1 = {
  name: '佐藤',
  age: 26,
  gender: 'male',
};

const person2 = {
  name: '田中',
  age: 19,
  gender: 'male',
};

const person3 = {
  name: '鈴木',
  age: 33,
  gender: 'female',
};

const person4 = {
  name: '高橋',
  age: 15,
  gender: 'female',
};

const people = [person1, person2, person3, person4];

for (const person of people) {
  if (person.age >= 20 && person.gender === 'male') {
    console.log(`${person.name}さん(${person.age}歳, ${person.gender})は「AND条件」で入場できます`);
  } else {
    console.log(`${person.name}さん(${person.age}歳, ${person.gender})は「AND条件」で入場できません`);
  }

  if (person.age >= 20 || person.gender === 'male') {
    console.log(`${person.name}さん(${person.age}歳, ${person.gender})は「OR条件」で入場できます`);
  } else {
    console.log(`${person.name}さん(${person.age}歳, ${person.gender})は「OR条件」で入場できません`);
  }

  console.log('-------------------------');
}

実行結果

佐藤さん(26歳, male)は「AND条件」で入場できます
佐藤さん(26歳, male)は「OR条件」で入場できます
-------------------------
田中さん(19歳, male)は「AND条件」で入場できません
田中さん(19歳, male)は「OR条件」で入場できます
-------------------------
鈴木さん(33歳, female)は「AND条件」で入場できません
鈴木さん(33歳, female)は「OR条件」で入場できます
-------------------------
高橋さん(15歳, female)は「AND条件」で入場できません
高橋さん(15歳, female)は「OR条件」で入場できません
-------------------------

解説

このコードは、people という配列に4人の人物情報をオブジェクトでまとめています。

const people = [person1, person2, person3, person4];

それぞれの人物には、名前(name)、年齢(age)、性別(gender)が設定されています。

const person1 = { name: '佐藤', age: 26, gender: 'male' };
const person2 = { name: '田中', age: 19, gender: 'male' };
const person3 = { name: '鈴木', age: 33, gender: 'female' };
const person4 = { name: '高橋', age: 15, gender: 'female' };

for...of 文を使って、この配列の中の1人ずつを順番に取り出し、2種類の条件で入場可能かどうかを判定しています。

for (const person of people) {
  // AND条件
  if (person.age >= 20 && person.gender === 'male') {
    console.log(`${person.name}さん(${person.age}歳, ${person.gender})は「AND条件」で入場できます`);
  } else {
    console.log(`${person.name}さん(${person.age}歳, ${person.gender})は「AND条件」で入場できません`);
  }

  // OR条件
  if (person.age >= 20 || person.gender === 'male') {
    console.log(`${person.name}さん(${person.age}歳, ${person.gender})は「OR条件」で入場できます`);
  } else {
    console.log(`${person.name}さん(${person.age}歳, ${person.gender})は「OR条件」で入場できません`);
  }

  console.log('-------------------------');
}

AND条件(&&)の判定

  • person.age >= 20 && person.gender === 'male'
    この条件は、「年齢が20歳以上かつ性別が男性」であることを意味します。
    両方の条件を満たす人だけが「入場できます」と判定されます。

OR条件(||)の判定

  • person.age >= 20 || person.gender === 'male'
    こちらは、「年齢が20歳以上または性別が男性」のどちらか一方でも満たせば「入場できます」となります。

結果の例

  • 佐藤さん(26歳、男性)は年齢も性別も条件を満たすので、AND・OR両方で入場できます。
  • 田中さん(19歳、男性)は性別が男性なのでOR条件で入場可能ですが、年齢が20歳未満なのでAND条件では入場できません。
  • 鈴木さん(33歳、女性)は年齢が20歳以上なのでOR条件で入場できますが、性別が女性なのでAND条件では入場できません。
  • 高橋さん(15歳、女性)は年齢も性別も条件を満たさないため、どちらの条件でも入場できません。

このように、AND条件はすべての条件を満たす必要があるのに対し、
OR条件はどれか1つでも満たせば良い、という違いを実際のコードを通じて確認できます。

Web制作を学ぶならUdemy

HTML・CSS・JavaScriptの基本から本格的なWebアプリ制作まで学べます。

【世界で90万人が受講】Web Developer Bootcamp(日本語版) icon

※このリンクは広告です(アフィリエイトリンク)

📚 おすすめのUdemy講座について詳しく
👉 独学でWebアプリが作れる!初心者におすすめのUdemy講座【体験レビューあり】

タイトルとURLをコピーしました