- for 반복문을 작성할 수 있다.
- for 반복문이 여러 개의 코드 블록의 조합이라는 것을 이해한다.
- 구구단 n단 출력을 반복문으로 구현할 수 있다.
- 반복문 내부에 조건문을 활용할 수 있다.
- 이중반복문의 동작 순서를 이해할 수 있다.
- 구구단 1-9단 출력을 이중반복문으로 구현할 수 있다.
- for반복문과 while반복문의 차이점을 설명할 수 있다.
- for반복문으로 작성된 코드를 while반복문으로 바꿀 수 있다.
for (초기값; 조건식; 증감식) {
// 실행할 코드
}
for 뒤에 오는 소괄호(()
) 에는 각각 초기값, 조건식, 증감식이,
코드블록에는 반복해서 실행할 코드가 들어감
초기값
조건식
true
일 경우에는 코드를 실행하며, false
일 경우 반복문이 종료증감식
// 초기값: 초기값(i)을 선언하고 1을 할당
// 조건식: i가 3보다 작거나 같을 경우 코드 실행, 3보다 클 경우 반복문 종료
// 증감식: 코드가 실행될 때마다 i가 1씩 증가
for (let i = 1; i <= 3; i++) {
console.log(i); // 1 2 3
}
문자열에 반복문을 활용하기 위해 문자열에 대해 몇 가지 복습
indexOf()
.length
를 붙임으로써 조회할 수 있다. let str = 'codestates';
for (let i = 0; i <= str.length - 1; i++) {
console.log(str[i]);
}
문자열의 마지막 문자의 인덱스는 문자열의 길이보다 1만큼 작다!
➡ i <= str.length - 1
( 또는 i < str.length
)로 조건식을 작성하면 문자열의 끝까지 순회하는 반복문을 구현할 수 있다.
반복문은 중첩이 가능하다.
다시 말해 반복문 내부에 또 다른 반복문을 사용할 수 있다!
2개의 반복문이 중첩된 경우 이중반복문, 3개의 반복문이 중첩된 경우 삼중반복문이라고 한다.
for (let i = 1; i <= 6; i++) {
for (let j = 1; j <= 6; j++) {
console.log(`첫번째 주사위는 ${i}, 두번째 주사위는 ${j}입니다.`);
}
}
외부 반복문의 초기화와 조건식 평가가 이루어진 후, 내부 반복문이 실행된다
내부 반복문 또한 초기화와 조건식 평가가 이루어진 후 내부에 있는 코드가 실행되고, 증감식, 조건식 평가가 반복적으로 이루어 진다
내부 반복문의 조건식 평가가 false가 되면, 내부 반복문은 종료가 되고 외부 반복문의 증감식과 조건식 평가가 이루어짐
➡ 이때 조건식 평가가 true면, 다시 내부 반복문을 순환
외부 반복문의 조건식이 false가 되면 모든 반복문이 종료
초기화, 조건식, 증감식이 모두 필요한 for문과 달리,
while문은 조건식만 입력한 후 조건식의 평가결과가 true인 경우
코드블록 내부의 코드를 반복하여 실행한다
false
로 평가되는 순간이 있는지 반드시 주의🚨//num은 항상 0보다 크므로, 무한루프가 발생
let num = 1;
while (num > 0) {
console.log(num);
num++;
}
true
로 평가되는 동안 do 뒤에 오는 코드블록 내부의 코드를 반복하여 실행➡ 용도가 명확하게 구분되지 않는다. while문으로 할 수 있는 것을 for문으로 구현이 가능하고, for문으로 할 수 있는 것을 while문으로 구현이 가능하다.
그러나 주로 사용하는 상황은 존재한다!