모던 자바스크립트 Deep Dive - 제 8장 제어문

손용현·2024년 7월 10일
0
post-thumbnail

> 모던 자바스크립트 Deep Dive 제 8장 제어문 요약정리

8.1 블록문

0개 이상의 문을 중괄호로 묶은 것

  • 하나의 실행 단위로 취급함
  • 제어문, 함수를 정의할 때 시용
  • 자체 종결성을 갖기 때문에 블록문 끝에 세미콜론을 붙이지 않음
// 블록문
{
	var foo = 10;
}
// 제어문
var x = 1;
if (x<10){
	x++;
}
// 함수 선언문
function sum(a,b){
	return a + b;
}  

8.2 조건문

주어진 조건식의 평가 결관에 따라 블록문의 실행을 결정함
(조건식은 불리언 값으로 평가될 수 있는 표현식)

8.2.1 if...else문

if(조건식){
	//조건식이 참이면 이 코드 블록이 실행된다.
}else{
	//조건식이 거짓이면 이 코드 블록이 실행된다.
}



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

8.2.2 switch문

주어진 표현식을 평가하여 그 값과 일치하는 표현식을 갖는 case문으로 실행 흐름을 옮김

switch (표현식){
 case 표현식1:
   switch 문의 표현식과 표현식1이 일치하면 실행될 문;
   break;
 case 표현식2:
   switch 문의 표현식과 표현식2이 일치하면 실행될 문;
   break;
 default: 
   switch 문의 표현식과 일치하는 case문이 없을 때 실행될 문;
}

8.3 반복문

8.3.1 for문

조건식이 거짓으로 평가될 때까지 코드 블록을 반복 실행한다.
(반복 횟수가 명확할 때 사용)

for (변수 선언문 또는 할당문; 조건식; 증감식;) {
  조건식이 참인 경우 반복 실행문;
}
  
//for 예시(변수 선언문 또는 할당문; 조건식; 증감식;)
for (var i = 0; i < 2; i++) {
  console.log(i);
}
// 0
// 1

8.3.2 while문

주어진 조건식의 평가 결과가 참이면 코드블록을 계속해서 반복 실행하고,
평가 결과가 거짓이면 코드 블록을 종료한다.
(반복 횟수가 불명확할 때 사용)

//while문 예시
var count = 0;

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

// 무한루프
while(true) {...}

8.3.3 do...while문

코드 블록을 먼저 실행하고 조건식을 평가한다.

var count = 0;

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

8.4 break문

앞서 설명한 switch문에서 보면 break문을 사용하면 코드 블록을 탈출한다.
정확히 표현하자면 코드 블록을 탈출하는 것이 아닌 레이블문, 반복문, siwitch문의 코드 블록을 탈출한다.

  • 레이블문, 반복문, siwitch문의 코드 블록 외에 break문을 사용하면 SyntaxError(문법에러) 발생

8.5 continue문

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

profile
킵고잉

0개의 댓글