1. 논리 연산자
- 논리 연산자는 주어진 논리식을 판단하여, 참(true)과 거짓(false)을 반환한다.
&&
연산자와 ||
연산자는 두 개의 피연산자를 가지는 이항 연산자이며, 피연산자들의 결합 방향은 왼쪽에서 오른쪽이다.
!
연산자는 피연산자가 단 하나뿐인 단항 연산자이며, 피연산자의 결합 방향은 오른쪽에서 왼쪽이다.
논리 연산자 | 설명 |
---|
&& | 논리식이 모두 참이면 참을 반환함. (논리 AND 연산) |
|| | 논리식 중에서 하나라도 참이면 참을 반환함. (논리 OR 연산) |
! | 논리식의 결과가 참이면 거짓을, 거짓이면 참을 반환함. (논리 NOT 연산) |
1) 논리 연산자의 모든 동작 결과
A | B | A && B | A II B | !A |
---|
true | true | true | true | false |
true | false | false | true | false |
false | true | false | true | true |
false | false | false | false | true |
2. 삼항 조건 연산자
- 삼항 조건 연산자(ternary operator)는 조건식의 평가 결과에 따라 반환할 값을 결정한다.
- 첫 번째 연산자가
true
로 평가되면 두 번째 피연산자를 반환하고, 첫 번째 피연산자가 false
로 평가되면 세 번째 피연산자를 반환한다. 즉, 삼항 조건 연산자는 두 번째 피연산자 또는 세 번째 피연산자로 평가되는 표현식이다.
기본 문법
'조건식' ? '조건식이 true일 때 반환할 값' : '조건식이 false일 때 반환할 값'
- 물음표(
?
) 앞의 첫 번째 피연산자는 조건식, 즉 boolean
타입의 값으로 평가될 표현식이다. 만약 조건식의 평가 결과가 boolean
값이 아니면 boolean
값으로 암묵적 타입 변환된다. 이때 조건식이 참이면 콜론(:
) 앞의 두 번째 피연산자가 반환되고, 거짓이면 콜론(:
) 뒤의 세 번째 피연산자가 반환된다.
- 삼항 조건 연산자의 첫 번째 피연산자는 조건식이므로 삼항 조건 연산자 표현식은 조건문이다. 따라서
if ~ else
문을 사용해도 삼항 조건 연산자 표현식과 유사하게 처리할 수 있지만, 삼항 조건 연산자 표현식은 값처럼 사용할 수 있지만 if ~ else
문은 값처럼 사용할 수 없다.
- 삼항 조건 연산자 표현식은 값으로 평가할 수 있는 유일한 표현식인 문이다. 따라서 삼항 조건 연산자 표현식은 값처럼 다른 표현식의 일부가 될 수 있다.
let x = 2;
let result = x % 2 ? '홀수' : '짝수';
console.log(result);