less than 1 minute read

if (true) {
  console.log(true);
} else {
  console.log(false);
}

일반적인 조건문은 위와 같이 사용하고,

true ? console.log(true) : console.log(false);

좀더 간단하게 사용하기 위해서 위와 같이 삼항연산자 를 사용한다.

하지만 이 때,

if (true) {
  console.log(true);
}

위와 같이 조건이 true 일 때만 결과를 내고싶은데,

true ? console.log(true);

위와 같이 사용하면 ‘:’ 가 필요하다는 SyntaxError가 뜬다.

사실, 코드를 간단하게 나타내고 싶어서 삼항연산자를 사용하는 것이라면

if (true) console.log(true);

위와 같이 일반 if문으로도 아주 간단하게 나타낼 수 있지만

굳이굳이 삼항연산자를 사용해야 한다면

true ? console.log(true) : void 0;

위와 같이 두번째 표현식에 void 0 을 넣어주면

void 0 이 undefined를 반환하기 때문에 식이 성립된다!

사실.

true ? console.log(true) : undefined;

위와 같이 입력해도 된다..

코드를 작성하면서

꼭 삼항연산자를 써야하는지 고민해보고 사용하자

Updated: