김루루의 개발일기

switch문 - javascript 0602 본문

프론트엔드/Javascript

switch문 - javascript 0602

김루루 2021. 6. 13. 16:21

◎switch 문

복수의 If 조건문을 switch문으로 바꿀수 있다.

switch( x ){
   case 'value1':
    본문코드  
    break;    
    
   case 'value2':
    본문코드                       
    break;
    
   default :
    본문코드
    break;     
}
switch( x ){
   case 'value1': 
   /* x 와 value1 값을 비교 후 true일때 
   본문코드 실행 하고 종료(break).  
   false 일때 다음 case문으로 넘어감 */
    본문코드       
    break;      
    
   case 'value2':
    본문코드                                  
    break;
    
   default :
   /* x 와 일치하는 value 가 없다면 
   default문 아래의 코드가 실행됨.
   (default문은 필수 X)*/
    본문코드      
    break;       
}

※ 만약 case에 break가 없다면, 값이 일치하는 case문 이후의  다음 case문들도 실행된다.

 

switch 와 case에는 어떤 표현식도 올 수 있다.

 

코드가 같은 case 문은 묶을 수 있다.

ex )    case 'value1' :
          case 'value2' :
                본문코드
                 break;     

 

※ switch문은 자료형이 중요하다. 값 뿐만 아니라 자료형도 비교한다.

 


문제

아래 코드를 switch문을 사용한 코드로 바꿔보세요. switch문은 하나만 사용해야 합니다.

let a = +prompt('a?', '');

if (a == 0) {
  alert( 0 );
}
if (a == 1) {
  alert( 1 );
}

if (a == 2 || a == 3) {
  alert( '2,3' );
}

 

 

(내가쓴 답)

let a = +prompt('a?','');
switch (a) {
    case 0 :
      alert( 0 );
      break;
    
    case 1 :
      alert( 1 );
      break;
    
    case 2:
    case 3:
      alert( '2,3' );
      break;
 }

 

 

(모던js정답)

let a = +prompt('a?', '');

switch (a) {
  case 0:
    alert( 0 );
    break;

  case 1:
    alert( 1 );
    break;

  case 2:
  case 3:
    alert( '2,3' );
    break;
}// 마지막 break는 생략가능.
Comments