34. switch
형태 :
switch (표현식) { case 표현식: 문장 리스트 opt default : 문장 리스트 opt };
switch 표현식의 평가 값과 일치하는 case 문 수행
var exp = 1; switch (exp) { case 1: console.log(100); case 2: console.log(200); } // 100 // 200
- switch (exp) 에서 exp를 평가하여 값을 구하고 구한 값에 일치하는 case 문을 수행
- exp 값이 1 이므로 case 1: 을 수행
주의
case 1 아래의 모든 문장을 수행하므로 200이 출력됩니다.
이를 방지하려면 break 를 작성해야 합니다.
break 사용
var exp = 1; switch (exp) { case 1: console.log(100); break; case 2: console.log(200); } // 100
- switch(exp) 의 값이 1 이므로 case 1: 을 수행
- break 문을 만나 switch 문을 빠져 나갑니다.
- 따라서 case 2: 를 수행하지 않게 됩니다.
일치하는 case 가 없으면 default 수행
var exp = 7, value; switch (exp) { case 1: value = 100; default: value = 700; case 2: value = 200; } console.log(value); // 200
- switch(exp) 의 값이 7 이므로 일치하는 case 가 없으며
- 이때 default: 코드를 실행합니다.
- case 2: 도 실행합니다.
- break 주의하자 항상!
OR(
||
) 형태var exp = 3; switch (exp) { case 2: case 3: console.log(100); } // 100
- exp 값이 2 또는 3이면 case 수행