돌아가기

"switch"문을 "if"문으로 변환하기

중요도: 5

"switch"문을 사용해 작성된 아래 코드를 if..else문을 사용한 코드로 변환해 보세요.

switch (browser) {
  case 'Edge':
    alert( "Edge를 사용하고 계시네요!" );
    break;

  case 'Chrome':
  case 'Firefox':
  case 'Safari':
  case 'Opera':
    alert( '저희 서비스가 지원하는 브라우저를 사용하고 계시네요.' );
    break;

  default:
    alert( '현재 페이지가 괜찮아 보이길 바랍니다!' );
}

switch와 동일한 동작을 하는 코드를 작성하려면 if문에서 일치 연산자 '==='를 써서 조건을 비교해야 합니다.

그런데 문제에선 비교하려는 값(browser) 자체가 문자열이기 때문에 동등 연산자 '=='를 사용해도 괜찮습니다.

if(browser == 'Edge') {
  alert("Edge를 사용하고 계시네요!");
} else if (browser == 'Chrome'
 || browser == 'Firefox'
 || browser == 'Safari'
 || browser == 'Opera') {
  alert( '저희 서비스가 지원하는 브라우저를 사용하고 계시네요.' );
} else {
  alert( '현재 페이지가 괜찮아 보이길 바랍니다!' );
}

해답에선 가독성을 위해 browser == 'Chrome' || browser == 'Firefox' …을 여러 줄에 나눠서 작성하였습니다.

가독성을 고려해 작성하였더라도 switch문을 이용한 코드가 더 깔끔하고 기술적(descriptive)이라는 것을 느끼셨을 겁니다.