論理演算子 パート3
CoddyのJavaScriptジャーニー「基礎」セクションの一部 — レッスン 21/77。
論理式を扱う際、それらを簡略化したり、並べ替えたりする必要があることがあります。
&& (and) で結合された2つの条件の前に ! (not) がある場合、それを2つの別々の部分に分割できます。&& (and) は || (or) になり、それぞれの部分に ! (not) が付きます:
!(A && B) は (!A) || (!B) と同じです
例えば:
// 数値が(1から10の間)ではないかどうかを確認しましょう
let number = 15
// これら2つの式は等価です:
let result1 = !(number >= 1 && number <= 10)
let result2 = !(number >= 1) || !(number <= 10)
console.log(result1) // True
console.log(result2) // Trueその逆もまた正しいです:!(A || B) は (!A) && (!B) と同じです
例えば:
// ある人が(学生または雇用されている)状態ではないことを確認する
let is_student = false
let is_employed = false
// これら2つの式は等価です:
let result1 = !(is_student || is_employed)
let result2 = !is_student && !is_employed
console.log(result1) // True
console.log(result2) // Trueチャレンジ
初心者ペットショップが、顧客にペットを販売できるかどうかを判断するシステムを作成するのを手伝っています。
以下の変数を初期化してください:
- 値
trueを持つhas_license - 値
falseを持つhas_space - 値
trueを持つhas_experience
以下の条件を判断するための論理式を記述してください:
can_sell_regular_pet: 顧客はライセンスまたは経験のいずれかが必要であり、かつスペースを持っている必要がありますcan_sell_exotic_pet: 顧客はライセンスと経験の両方が必要であり、かつスペースを持っている必要がありますcannot_sell_any_pet: 顧客はライセンスがなく、かつ経験もない、またはスペースを持っていません
チートシート
ド・モルガンの法則を使用すると、! (not) 演算子を移動させることで論理式を簡略化できます:
!(A && B) は (!A) || (!B) と同じです
// NOT (1から10の間)
let result1 = !(number >= 1 && number <= 10)
let result2 = !(number >= 1) || !(number <= 10) // 同等!(A || B) は (!A) && (!B) と同じです
// NOT (学生または就業者)
let result1 = !(is_student || is_employed)
let result2 = !is_student && !is_employed // 同等自分で試してみよう
// 変数を初期化する
// 条件を計算する
let can_sell_regular_pet =
let can_sell_exotic_pet =
let cannot_sell_any_pet =
// 以下の行を削除しないでください
console.log("Can sell regular pet:", can_sell_regular_pet)
console.log("Can sell exotic pet:", can_sell_exotic_pet)
console.log("Cannot sell any pet:", cannot_sell_any_pet)このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。