JS DeepDive - 반복문

이상철·2023년 5월 1일
0

JS - DeepDive

목록 보기
5/8
post-thumbnail

for(let i = 0; i < 2; i++) {
	console.log(i)
}

1. for문을 실행하면, 맨 먼저 변수 선언문 let i = 0; 이 실행된다.
- 변수 선언문은 단 한번만 실행됨 ! **

2. 변수 선언문의 실행이 종료되면, 조건식이 실행된다. 현재 변수 i의 값은 0이므로
조건식의 평가결과는 true이다.

3. 조건식의 평가 결과가 true이므로 코드블록이 실행된다.
- 증감문으로 실행흐름이 이동하는 것이 아니라 코드블록으로 실행 흐름이 이동함 !

4. 코드 블록의 실행이 종료되면 증감식 i++가 실행하여 변수 i의 값은 1로 재할당 됨.

5. 증감식 실행이 종료되면, 다시 조건식이 실행된다. 변수 선언문이 실행되는 것이 아니라
조건식이 실행된다는 점에 주의하자.(* 변수 선언문은 단 한번만 실행됨*)
- 현재 i 변수의 값은 1이므로 조건식 평가 결과는 true이다.

6. 조건식의 평가 결과가 true이므로 코드블록 다시 실행

7. 코드 블록의 실행이 종료되면, 증감식 i++가 실행되어 i 변수의 값은 2로 재할당 됨.

8. 증감식 실행이 종료되면, 다시 조건식 실행, 현재 i 변수의 값은 2이므로 조건식 평가가
false. 조건식의 평가 결과가 false이므로 for문 실행 종료.
for (let i = 0; i < 2; i++) {
	for(let j = 0; j < 2; j++) {
		console.log(`i는 ${i} , j는 ${j}`)
	}
}

for문 실행 -> 변수 선언문 i = 0; 조건식 실행 true -> 코드블록 내 for문 실행 -> 
변수 선언문 j 실행 -> 조건식 실행 true -> 코드블록 실행 결과 "i는 0 , j는 0" 코드 블록 종료
-> 증감문 실행 j++ 고로 j는 1 -> 조건문 실행 true -> 코드 블록 실행 결과 "i는 0 , j는 1" 
코드블록 종료 -> 증감문 실행 j++ 고로 j는 2 -> 조건문 실행 결과 false -> 반복문 종료
-> 상단 for문 코드 블록 종료 -> 증감문 실행 i++ 고로 i는 1 -> 코드블록 실행 for문 동작
-> j 반복문 과정 반복 "i는 1 , j는 0" -> "i는 1 , j는 1" -> 코드 블록 종료 -> 증감문 실행 -> 
j++ 로 j는 2 -> 조건식 false -> 반복문 종료 -> 상단 for문 증감문 실행 i++ , i는 2->
조건식 false로 반복문 종료. 
profile
헤더부터 푸터까지!!!

0개의 댓글