안녕하세요.
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 문을 사용하면 가독성 측면에서는 나으나, 코드의 길이가 늘어날 수 있습니다.
이는 작성자의 상황과 취향을 반영한다면 더 좋을 거 같습니다.
감사합니다.
'개발공부일지 > JavaScript' 카테고리의 다른 글
JavaScript - 고차함수에 대하여 (0) | 2022.11.21 |
---|---|
JavaScript - setTimeout , setInterval 에 관하여 (0) | 2022.11.14 |
JavaScript - Callback 함수와 동기/비동기 (0) | 2022.11.11 |
JavaScript - appEventListener(이벤트생성) (0) | 2022.11.11 |
JavaScript 실습예제 - Lotto JavaScript 코드 효율화 (0) | 2022.11.10 |
댓글