본문 바로가기
JAVASCRIPT

자바스크립트 If문 중첩 제거하기 (JAVASCRIPT)

by dancingcarrot 2023. 4. 18.

 

// if문 중첩을 제거하는 방법

1. if문 다음에 나오는 공통된 절차를 각 분기점 내부에 넣는다.
2. 분기점에서 짧은 절차부터 실행하게 if문을 작성한다.
3. 짧은 절차가 끝나면 return(함수 내부의 경우)이나 break(for문 내부의 경우)로 중단한다
4. else를 제거한다(이때 중첩 하나가 제거된다.)
5. 다음 중첩된 분기점이 나오면 1~4번의 과정을 반복한다.

 

<If문 중첩 제거해볼 코드>

function test(){
  let result ='';
  if(a){
    if(!b){
  	  result = 'c';
    }
  } else {
  	result = 'a';
  }
  result +='b';
  return result;
}

1. if문 다음에 나오는 공통된 절차를 각 분기점 내부에 넣는다.

function test(){
  let result ='';
  if(a){
    if(!b){
  	  result = 'c';
    }
    result +='b';  //추가
    return result; //추가
  } else {
  	result = 'a';
    result +='b';
    return result;
  }
}

2. 분기점에서 짧은 절차부터 실행하게 if문을 작성한다.

function test() {
  let result = '';

 if(!a) {	//로직에 맞추기 위해 !a로 바꿈
   result += 'a';
   return += 'b';
   return result;
 } else { 
   if(!b) {
	result = 'c';
   }
   return += 'b';
   return result;
}
   
}

3. 짧은 절차가 끝나면 return(함수 내부의 경우)이나 break(for문 내부의 경우)로 중단한다

  

-> 이미 return이 존재함

 

4. else를 제거한다(이때 중첩 하나가 제거된다.)

 

function test() {
  let result = '';

 if(!a) {
   result += 'a';
   return += 'b';
   return result;
 }  
  if(!b) {
   result = 'c';
  }
   return += 'b';
   return result;
}

 

 

출처 : 제로초 유튜브 : 자바스크립트 강좌 4-4. if문 중첩 줄이기 - YouTube

댓글