제어문은 조건에 따라 코드 블록을 실행하거나 반복 실행할 때 사용한다. 제어문을 사용하면 순차적으로 실행되는 코드의 흐름을 인위적으로 제어할 수 있다.
{}
)로 묶은 것if (조건식) {
// 조건식 참일시 실행
}
else if (조건식2) {
// 조건식2가 참일시 실행
}
else {
// 조건식 거짓일시 실행
}
// + 블록문 안이 값을 결정하여 할당하는 거라면 한줄의 삼항 조건 연산자로 바꿔쓸수도
var kind = num ? (num > 0 ? '양수' : '음수') : '영';
switch(표현식) {
case 표현식1:
~~
break;
default:
~~
break;
}
switch문을 탈출하지 않고 switch문이 끝날때가지 모든 case와 default를 실행하는 폴스루가 일어날 수 있으므로 각 case마다 코드블록에서 탈출할 수 있는 break를 쓰는 것 잊지말기! (default문에서는 break를 생략하는게 일반적)
if-else문은 논리적 참, 거짓으로 실행할 코드 블록을 결정하지만 switch문은 다양한 상황(case)에 따라 실행할 코드 블록을 결정할 때 사용한다
for (변수선언 또는 할당; 조건식; 증감식) {
// 참인 경우 실행할 문
}
while (조건식) {
// 참인 경우 실행할 문
}
for문은 반복 횟수가 명확할 때 사용하고, while문은 반복 횟수가 불명확할 때 사용한다
do {
~~
} while (조건식)
레이블문이란?
foo : { // 이런게 레이블 문 console.log("hi"); break foo; console.log("no"); } // 하지만 중첩된 for문 외부로 탈출할 때 사용하는 것 외에는 권장하지 않음