[Study] JS DeepDive : 8. 제어문

sjoleee·2022년 10월 2일
0
post-thumbnail

모던 자바스크립트 Deep Dive 스터디

8. 제어문

💡 조건에 따라 코드 블록을 실행(조건문)하거나 반복 실행(반복문)할 때 사용한다.
제어문을 사용하면 코드의 실행 흐름을 인위적으로 제어할 수 있다.

8.1 블록문

💡 0개 이상의 문을 중괄호로 묶은 것으로, 코드 블록 또는 블록이라고 부른다.

8.2 조건문

💡 주어진 조건식의 평가 결과에 따라 코드 블록(블록문)의 실행을 결정한다.

8.2.1 if...else 문

 if(조건식1){
 // 조건식1이 참이면 실행된다.
 } else if (조건식2){
 // 조건식2가 참이면 실행된다.
 } else {
 // 조건식1, 2 모두가 거짓이면 실행된다.
 }

삼항 연산자로 바꿔쓸 수 있는 경우가 많다.

8.2.2 switch 문

switch(조건식){
  case 표현식1:
    //switch문의 표현식과 표현식1이 일치하면 실행될 문;
    break; //break를 해주지 않으면 아래의 case문을 모두 수행하므로 반드시 사용하자.
  case 표현식2:
    //switch문의 표현식과 표현식2가 일치하면 실행될 문;
    break;
  default:
    //switch문의 표현식과 일치하는 case문이 없을 때 실행될 문;
}

if문의 조건식은 불리언 값으로 평가되어야 하지만, switch문의 표현식은 다른 데이터 타입이라도 일치하면 실행이 가능하므로 논리적 참, 거짓보다는 다양한 상황에 따라 실행할 코드 블록을 결정할 때 사용한다.

8.3 반복문

💡 조건식의 평가 결과가 참인 경우 코드 블록을 실행한다.
그 후 조건식을 다시 평가하여 여전히 참인 경우 코드 블록을 다시 실행한다.
이는 조건식이 거짓일 때까지 반복한다.

8.3.1 for 문

for(변수 선언문 혹은 할당문; 조건식; 증감식){
	//조건식이 참인 경우 반복 실행될 문;
}

for문 실행 순서

  • 변수 선언문 실행
  • 조건식 실행, 평가 결과는 불리언 값
  • 조건식 평가 결과가 true일 경우 코드블록 실행
  • 코드블록 실행 종료후 증감식 실행
  • 다시 조건식실행
  • ...
  • 조건식 평가 결과가 false일 경우 종료

8.3.2 while 문

💡 주어진 조건식의 평가 결과가 참이면 코드 블록을 계속해서 반복 실행한다.
반복 횟수가 불명확할 때 주로 사용한다.

let count = 0;

while(count < 3) {
 console.log(count); // 0, 1, 2
 count++;
}

조건식의 평가 결과가 언제나 참이면 무한루프가 된다.
이 경우, 코드 블록 내에 if문으로 탈출 조건을 만들고 break문으로 코드 블록을 탈출할 수 있다.

let count = 0;

// 무한루프
while(true) {
 console.log(count); // 0, 1, 2
 count++;
 if(count === 3) break;
}

8.3.3 do...while 문

while문에서 조건을 먼저 평가하는 것이 아니라 코드블록을 먼저 실행하고 조건을 평가하는 문.

let count = 0;

do {
 console.log(count); // 0, 1, 2
 count++;
} while(count < 3);

8.4 break 문

💡 레이블 문, 반복문, switch문의 코드 블록을 탈출한다.

레이블 문이란, 식별자가 붙은 문을 말하는 것이다.
switch문의 case문과 default문도 레이블 문이다.

8.5 continue 문

💡 반복문의 코드 블록 실행을 현 지점에서 중단하고 반복문의 증감식으로 실행 흐름을 이동시킨다.

profile
상조의 개발일지

0개의 댓글