Menu
Coddy logo textTech

논리 연산자 파트 3

Coddy JavaScript 여정의 기초 섹션에 포함된 레슨 — 77개 중 21번째.

논리식을 다룰 때, 때로는 이를 단순화하거나 재배열해야 할 필요가 있습니다.

&& (and)로 연결된 두 조건 앞에 ! (not)이 있는 경우, 이를 두 개의 별개 부분으로 나눌 수 있습니다. && (and)는 || (or)가 되고, 각 부분은 자체적인 ! (not)을 갖게 됩니다:

!(A && B)(!A) || (!B)와 같습니다.

예를 들어:

// 숫자가 (1과 10 사이)가 아닌지 확인해 봅시다
let number = 15

// 이 두 표현식은 동일합니다:
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
// 이 두 표현식은 동일합니다:
let result1 = !(is_student || is_employed)
let result2 = !is_student && !is_employed

console.log(result1)  // True
console.log(result2)  // True
challenge icon

챌린지

초급

당신은 애완동물 가게가 고객에게 애완동물을 판매할 수 있는지 여부를 결정하는 시스템을 만드는 것을 돕고 있습니다.

다음 변수들을 초기화하세요:

  • has_licensetrue 값으로
  • has_spacefalse 값으로
  • has_experiencetrue 값으로

다음 조건에 따라 논리식을 작성하세요:

  • can_sell_regular_pet: 고객이 면허(license) 또는 경력(experience) 중 하나가 있고, 공간(space)도 있어야 함
  • can_sell_exotic_pet: 고객이 면허(license)와 경력(experience)이 모두 있고, 공간(space)도 있어야 함
  • cannot_sell_any_pet: 고객이 면허(license)도 없고 경력(experience)도 없거나, 또는 공간(space)이 없음

치트 시트

드 모르간의 법칙을 사용하면 ! (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)
quiz icon실력 점검

이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.

기초의 모든 레슨