본문 바로가기
개발공부일지/JavaScript

JavaScript - 삼항연산자에 대하여

by Hynn1429 2022. 11. 14.
반응형

안녕하세요.

Hynn 입니다.

 

이번 포스팅과, 다음 포스팅에서는 이전에 동기/비동기 설명에서 잠시 다루었던, 삼항연산자와 setTimeout, setInterval 에 대해서 설명드리도록 하겠습니다.

간단한 내용일수도 있지만, 복잡한 내용이 될 수도 있는 두개의 항목인지라, 이번 포스팅에서는 삼항 연산자부터 다루도록 하겠습니다.

 

 

 

============

1. 삼항연산자란?

2. If 문과 삼항연산자 작성의 차이

============

 

1. 삼항연산자란?

삼항연산자, 조건부 연산자라고도 불리우며, 이 삼항연산자의 기본적인 사용틀은 "If" 문의 그것과 거의 동일합니다.

하지만 If문과 삼항연산자는 상황에 따라서 분명히 쓰임이 좋은 방향이 분명히 별도로 존재하기 때문에,

개별적으로 나뉘어 있다고 할 수 있습니다.

 

먼저 삼항연산자의 사용구조를 간단하게 그림으로 표현해보도록 하겠습니다.

 

IF문과 크게 다를바가 없습니다.

이를 간단하게 삼항연산자를 사용하면 아래와 같습니다.

 

const A = 20
const B = 10
const C = A > B ? "A가싫어요" : "B가싫어요"

console.log(C)

2. If 문과 삼항연산자의 차이

반대로 위의 삼항연산자를 사용한 것을 If 문으로 표현하면 아래와 같습니다.

if(A>B){
    "A가싫어요"
}else {
    "B가싫어요"}

이러한 한개의 조건에서는 삼항연산자가, If문에 비해서 훨씬 간결하고 쉽게 알아볼 수 있습니다.

function between(num, min, max){
    if(num > min && num < max){
        return true
    }
    return false
    
    ==================
    
    function between(num, min, max) {
        return num > min && num < max 
    }

 

위의 예제도 같은 결과값을 출력하는 If문과, 삼항연산자입니다.

다만 여기서의 다른점은, return 을 나타내야 하는 것이고, 아래의 삼항연산자는 결과값 자체가 Boolean 타입의 원시데이터 이므로, 앞에 "return" 이 붙지 않으면, "undefined" 가 출력될 수 있는 주의가 필요합니다. 

 

If문과 삼항연산자는 자신이 사용하는 상황, 식의 가독성의 따라서 사용하기 더 적합한 것이 정답이 있다고 보기는 어렵습니다.

삼항연산자를 많이 쓸 경우, 코드의 길이는 줄어들 수 있지만, 가독성의 문제가 발생할 수 있고,

If 문을 사용하면 가독성 측면에서는 나으나, 코드의 길이가 늘어날 수 있습니다.

 

이는 작성자의 상황과 취향을 반영한다면 더 좋을 거 같습니다. 

 

감사합니다.

 

반응형

댓글