
참고- 모던자바스크립트 8.3.1 for문
조건식이 거짓으로 평가될 때 까지 코드 불록을 반복 실행한다.
for (변수 선언문 또는 할당문; 조건식; 증감식) {
조건식이 참인 경우 반복 실행될 문;
}
ex1.
for (let i = 0; i < 2; i++) {
console.log(i);
}
결과:
0
1
해석하면 i 변수가 0으로 초기화된 상태에서 시작하여 i가 2보다 작을때까지 코드 블록을 2번 반복 실행하게되는데.
- for 문을 실행하면 맨 먼저 변수 선언문 let i = 0 이 실행된다. 여기서 변수 선언문은 단! 한 번만 실행된다.
- 변수의 선언문의 실행이 종료되면 조건식 i < 2 가 실행된다. 현재 i 변수의 값은 0이므로 조건식의 평가는 true 이다.
- 조건식의 결과가 true 이므로 코드 블록이 실행된다.
- 코드 블록의 실행이 종료되면서 증감식 i++ 가 실행되어 i 변수의 값은 1이 된다.
- 증감식 실행이 종료되면 다시 조건식이 실행된다. 변수 선언문이 실행되는 것이 아니라
조건식이 실행된다는 점!
- 조건식의 평가 결과가 true 이므로 코드 블록이 다시 실행
- 코드 블록의 실행이 종료되면서 증감식 i++ 가 실행되어 i 변수의 값은 2가 된다.
- 증감식 실행이 종료되면서 다시 조건식이 실행된다. 현재 i 변수의 값은 2가 되므로 false 가 되면서 for 문의 실행이 종료된다.
ex2.
이중 중첩 for문을 사용하여 두 개의 주사위를 던졌을때 두 눈의 합이 6이 되는 모든 경우의 수를 출력
for(let i = 1; i <= 6; i++) {
for(let j = 1; j <= 6; j++) {
if(i+j === 6) console.log
}
}