돌아가기

"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)이라는 것을 느끼셨을 겁니다.