JavaScript에서 세 개의 피연산자를 받는 유일한 연산자이다.
앞에 조건문, 물음표(?) 뒤에 조건문이 참(truthy)일 경우 실행할 표현식, 콜론(:) 뒤에 조건문이 거짓(falsy)일 경우 실행할 표현식을 사용한다.
condition ? expressionIfTrue : expressionIfFalse;
const age = 20;
const message = age >= 18 ? '성인입니다.' : '미성년자입니다.';
console.log(message); // '성인입니다.'
이중 삼항 연산자는 중첩된 조건을 처리할 때 사용한다.
const number = 10;
const result = number > 0
? number % 2 === 0
? "짝수"
: "홀수"
: "음수 또는 0";
console.log(result); // '짝수'
삼항 연산자를 사용하면 코드를 더 간결하게 작성할 수 있다. 간단한 조건문을 표현할 때 유용하다.
간단한 조건에 대해서는 삼항 연산자가 가독성을 향상시킬 수 있다. 코드가 한 줄로 표현되기 때문에 빠르게 이해할 수 있다.
삼항 연산자는 간단한 조건에 적합하지만, 복잡한 조건문이나 여러 조건을 처리할 때는 가독성이 떨어질 수 있다.
삼항 연산자를 남용하면 가독성이 감소할 수 있다. 특히 여러 개의 조건이 있는 경우, if-else 문이 더 명확한 코드를 작성하는 데 도움이 될 수 있다.
삼항 연산자는 단일 표현식을 반환하므로 부수 효과를 처리하기 어려울 수 있다. 특히 함수 호출이나 다른 명령문을 함께 수행해야 하는 경우에는 if-else 문이 더 적절할 수 있다.