논리 연산자 (`||`, `&&`)의 조건식 평가 순서

My Pale Blue Dot·2025년 2월 12일

JAVASCRIPT

목록 보기
4/26
post-thumbnail

오늘은 논리 연산자 (||, &&)의 조건식 평가 순서에 대해 공부했다.
논리 연산자는 조건문의 흐름을 결정하는 중요한 연산자로, ||(OR)와 &&(AND)의 동작 방식을 이해하면 코드 실행 흐름을 예측하고 최적화할 수 있다.


🔹 OR 연산자 (||) 동작 원리

|| 연산자는 왼쪽 값이 true이면 오른쪽을 실행하지 않고,
왼쪽 값이 false일 때만 오른쪽 값을 실행하는 특징이 있다.

console.log(true || true);   // true
console.log(true || false);  // true
console.log(false || true);  // true
console.log(false || false); // false

실행 결과

  • true || true → 왼쪽이 true이므로 오른쪽 평가 안 함 → 결과: true
  • true || false → 왼쪽이 true이므로 오른쪽 평가 안 함 → 결과: true
  • false || true → 왼쪽이 false이므로 오른쪽 평가 → 결과: true
  • false || false → 둘 다 false → 결과: false

즉, 왼쪽 값이 true라면 오른쪽 조건을 볼 필요 없이 true가 된다는 점이 중요하다.


📌 OR 연산자의 게이트 역할

|| 연산자는 왼쪽 조건이 true이면 오른쪽을 실행하지 않기 때문에 특정 조건을 게이트(입구)로 활용할 수 있다.

console.log((n1 > 10) || (n6 = 10));

위 코드에서 (n1 > 10)true라면 (n6 = 10)은 실행되지 않는다.
하지만 (n1 > 10)false라면 (n6 = 10)이 실행되어 n610이 할당된다.


🔹 AND 연산자 (&&) 동작 원리

&& 연산자는 왼쪽 값이 true일 때만 오른쪽을 실행하는 특징이 있다.

console.log(true && true);   // true
console.log(true && false);  // false
console.log(false && true);  // false
console.log(false && false); // false

실행 결과

  • true && true → 두 조건 모두 true → 결과: true
  • true && false → 왼쪽 true, 하지만 오른쪽 false이므로 결과: false
  • false && true → 왼쪽 false이므로 오른쪽 평가 안 함 → 결과: false
  • false && false → 왼쪽 false이므로 오른쪽 평가 안 함 → 결과: false

즉, 왼쪽 값이 false이면 오른쪽 조건을 볼 필요 없이 무조건 false가 된다는 점이 중요하다.


📌 AND 연산자의 게이트 역할

&& 연산자는 왼쪽 조건이 true일 때만 오른쪽을 실행하기 때문에, 특정 조건을 게이트(입구)로 활용할 수 있다.

console.log(n1 && 'n1안의 정수값은 true를 의미합니다');

위 코드에서 n1true(0이 아닌 값)라면 'n1안의 정수값은 true를 의미합니다'가 출력된다.
하지만 n1false(0, null, undefined, false)라면 오른쪽 코드는 실행되지 않고 아무것도 출력되지 않는다.


🔹 논리 연산자의 활용 정리

연산자동작 방식예제결과
(OR)왼쪽이 true이면 오른쪽 실행 안 함`true
&& (AND)왼쪽이 false이면 오른쪽 실행 안 함false && truefalse
! (NOT)값을 반대로 변환!truefalse

🔹 오늘 배운 것 정리

  • || 연산자는 왼쪽이 true이면 오른쪽을 실행하지 않는다게이트 역할 가능
  • && 연산자는 왼쪽이 false이면 오른쪽을 실행하지 않는다게이트 역할 가능
  • ! 연산자는 값을 반대로 변환한다.
profile
Here, My Pale Blue.🌏

0개의 댓글