// 블록문
{
var foo = 10;
}
// 제어문
var x = 1;
if (x < 10) {
x++;
}
// 함수 선언문
function sum(a, b) {
return a + b;
}
if...else
- 주어진 조건식의 평가 결과, 논리적 참 또는 거짓에 따라 실행할 코드블록을 결정
- if문의 조건식은 불리언 값으로 평가되어야 하며,
만약 if문의 조건식이 불리언 값이 아닌 값으로 평가되면 엔진이 암묵적으로 불리언 값으로 강제변환.
if (조건식1) {
// 조건식1이 참이면 이 코드 블록이 실행된다.
} else if (조건식2) {
// 조건식2가 참이면 이 코드 블록이 실행된다.
} else {
// 조건식1과 조건식2가 모두 거짓이면 이 코드 블록이 실행된다.
}
**만약 if문의 조건식이 불리언 값이 아닌 값으로 평가되면 엔진이 암묵적으로 불리언 값으로 강제변환.
switch
- 주어진 표현식을 평가하여 그 값과 일치하는 표현식을 갖는 case 문을 실행
- switch문의 표현식은 불리언 값보다 문자열이나 숫자 값인 경우가 많음
- 논리적 참,거짓보다 다양한 상황에 따라 실행할 코드블록을 결정할 때 사용
switch (표현식) {
case 표현식1:
switch 문의 표현식과 표현식1이 일치하면 실행될 문;
break;
case 표현식2:
switch 문의 표현식과 표현식2가 일치하면 실행될 문;
break;
default:
switch 문의 표현식과 일치하는 case 문이 없을 때 실행될 문;
}
폴스루(fall through);
break문이 없다면 case문의 표현식과 일치하더라도 실행 흐름이 다음 case문으로 연이어 이동함
for문 : for 문은 조건식이 거짓으로 평가될 때까지 코드 블록을 반복 실행
for (변수 선언문 또는 할당문; 조건식; 증감식) {
조건식이 참인 경우 반복 실행될 문;
}
while문 :
-주어진 조건식의 평가 결과가 참이면 코드 블록을 계속해서 반복 실행.
-for 문은 반복 횟수가 명확할 때 주로 사용하고 while 문은 반복 횟수가 불명확할 때 주로 사용
var count = 0;
// count가 3보다 작을 때까지 코드 블록을 계속 반복 실행한다.
while (count < 3) {
console.log(count); // 0 1 2
count++;
}
**조건식의 평가 결과가 언제나 참이면 무한루프
while(true) {....}
do...while문
do...while 문은 코드 블록을 먼저 실행하고 조건식을 평가.
따라서 코드 블록은 무조건 한 번 이상 실행됨
var count = 0;
// count가 3보다 작을 때까지 코드 블록을 계속 반복 실행한다.
do {
console.log(count); // 0 1 2
count++;
} while (count < 3);
// foo라는 식별자가 붙은 레이블 블록문
foo: {
console.log(1);
break foo; // foo 레이블 블록문을 탈출한다.
console.log(2);
}
console.log('Done'!);