- 제어문은 조건에 따라 코드 블록을 실행하거나 반복 실행할 때 사용한다.
8.1 블록문
- 블록문은 0개 이상의 문을 중괄호로 묶은 것으로, 코드 블록 또는 블록이라고 부르기도 한다. 자바스크립트는 블록문을 하나의 실행 단위로 취급한다.
8.2 조건문
- 조건문은 주어진 조건식의 평가 결과에 따라 코드 블록의 실행을 결정한다.
8.2.1 if...else문
- if 문의 조건식은 불리언 값으로 평가되어야 한다. 만약 if 문의 조건식이 불리언 값이 아닌 값으로 평가되면 자바스크립트 엔진에 의해 암묵적으로 불리언 값으로 강제 변환되어 실행할 코드 블록을 결정한다.
8.2.2 switch 문
- 주어진 표현식을 평가하여 그 값과 일치하는 표현식을 갖는 case 문으로 실행 흐름을 옮긴다. switch 문의 표현식과 일치하는 case 문이 없다면 실행 순서는 default 문으로 이동한다. default 문은 선택사항으로, 사용할 수도 있고 사용하지 않을 수도 있다.
- case 문에 해당하는 문의 마지막에는 break 문을 사용해야 한다.
8.3 반복문
- 반복문은 조건식의 평가 결과가 참인 경우 코드 블록을 실행한다.
8.3.1 for 문
- for 문은 조건식이 거짓으로 평가될 때까지 코드 블록을 반복 실행한다.
- for 문 내에 for 문을 중첩해 사용할 수 있다.
for (변수 선언문 또는 할당문; 조건식; 증감식) {
조건식이 참인 경우 반복 실행될 문;
{
8.3.2 while 문
- while 문은 주어진 조건식의 평가 결과가 참이면 코드 블록을 계속해서 반복 실행한다.
- for 문은 반복 횟수가 명확할 때 주로 사용하고 while 문은 반복 횟수가 불명확할 때 주로 사용한다.
8.3.3 do...while 문
- do...while 문은 코드 블록을 먼저 실행하고 조건식을 평가한다. 따라서 코드 블록은 무조건 한 번 이상 실행된다.
8.4 break 문
- break 문은 레이블 문, 반복문(for, for...in, for...of, while, do...while) 또는 switch 문의 코드 블록을 탈출한다.
8.5 continue 문
- continue 문은 반복문의 코드 블록 실행을 현 지점에서 중단하고 반복문의 증감식으로 실행 흐름을 이동시킨다.
- break 문처럼 반복문을 탈출하지는 않는다.
🌳 느낀점
위 글은 위키북스의 모던 자바스크립트 Deep Dive 를 읽고 정리한 내용입니다.