javascript 15 switch statement

자바스크립트의 스위치 명령문에 대해 알아보자

스위치 명령문은 if/else 와 비슷하다. 아래 쓰인 예시를 보자. 

const day = 'wednesday';


switch (day) {
    case 'monday':  //day === monday
        console.log('today is monday!');
        console.log('sad day');
        break;

위의 코드를 보면 괄호안에 어떤 변수가 필요한지 선언해야 한다.
case 옆에는 변수안의 값이 일치하는지 확인하기 위한 요소이며
type coerison이 적용되지 않아 === 처럼 strict comparison operator 라고 생각하면된다.

    case 'tuesday':
        console.log('today is tuesday!'); //if no break code is executed until break appear
    case 'wednesday':
    case 'saturday':
        console.log('my Favorite day!');
        break;
위에 tuesday 에서는 break; 를 뺏는데 이 경우 아래 break 코드가 나올때 까지 모든 코드를 실행
시킨다.
따라서 wednesday 그리고 saturday는 같은 결과를 가진다.
    default:
        console.log('good day!');
}

default는 if/else의 else라고 생각하면 편하다.

if (day === 'monday') {
    console.log('today is monday!');
} else if (day === 'wednesday' || day === 'saturday') {
    console.log('today is wednesday or saturday');
} else console.log('good day!');

if/else 로도 switch 문처럼 할 수 있다.
하지만 좀 더 복잡해 보이고 읽기 힘들다. switch 문은 그대신 점점 사용되어지지 않지만 여전히
꼭 필요한 곳이 있어 반드시 숙지 해야한다.

댓글

이 블로그의 인기 게시물

Javascript this keyward

Javascript Object vs Primitives (Primitives vs reference type)