https://velog.velcdn.com/images/fepanbr/post/6a7555d6-4279-476e-a10d-9f3aa9d1ba7b/image.png

f-lab 멘토링 중, If문과 switch문이 어떤 차이가 있는지에 대한 질문을 받았다. 이에 대해 정확하게 답변할 수 없었다. 비슷한 상황에 사용하는 두 분기문이 어떤 점이 다른지 궁금하기도 하여 정리해보고자 한다.

👉🏻 If문

If문 구조

if (Expression) Statement

// or

if (Expression) Statement else Statement

If문은 Expression 부분이 trueIf Statement를 실행하고 falseelse Statement를 실행한다.

👉🏻 Switch문

Switch문 구조

switch (Expression) {
  case Expression: {
    // ...
  }

   // or

  case Expression:
    // ...

  default:
    // ...

}

Switch문은 Expression의 값에 따라 case 값과 일치하는 곳으로 분기를 한다.

❗️ 차이점

위의 내용이 인터넷 검색으로 나온 If문과 Switch문의 차이점이다. 하지만 의문점이 많이 남았다.

❓ 의문점

const a = 0;
switch(true) {
  case a === 0:
    // 코드
  case f(a) === 'no':

}