반복문은 크게 for문과 while 문으로 나누어 진다.
for 문
<for 문의 구성요소>
for (초기값; 조건식; 증감식) {
// 실행할 코드
}
초기값: 증감식 반복 횟수를 카운트하는 역할을 하는 변수
조건식: 코드블록 내부의 코드를 실행 여부를 결정
증감식: 코드블록 내부의 코드를 실행한 후 초기값으로 선언된 변수를 증가 또는 감소시키기 위한 표현식
// 코드가 실행될 때마다 i가 1씩 증가
for (let i = 1; i <= 3; i++) {
console.log(i); // 1 2 3
}
구구단 5단을 출력하였다.
let으로 변수 5를 선언한 후
변수가 2이상이고 9이하이면 for 문으로 이어진다.
for문은 1부터 9까지 1씩 증가한 값을 출력하게 된다.
이러한 결과를 얻을 수 있다.
문자열도 동일하게 적용할 수 있다.
이때 length에 -1 을 하는 이유는 ?
문자열 hello의 문자열의 개수는 5개이지만
index 번호는 0부터 시작이여서 4번에서 끝나게 된다.
만약 str.length-1가 아닌 str.length로 출력을 하게 된다면, undefined 라는 출력이 하나 더 생기게 된다.\
이러한 결과를 얻게 된다.
반복문은 또한 중첩이 가능하다 그러기에 구구단도 출력이 가능하다.
while 문
초기화, 조건식, 증감식이 모두 필요한 for문과 달리
while문은 조건식만 입력한 후
조건식의 평가결과가 true인 경우 코드블록 내부의 코드를 반복하여 실행
이러한 for문
for (let num = 0; num < 3; num++) {
console.log(num); // 0 1 2
}
이러한 while문으로 바뀐다.
let num = 0;
while (num < 3) {
console.log(num); // 0 1 2
num++
}
while문을 사용할 때는 무한루프를 주의해야 한다.
무한루프란 반복문이 종료되는 조건식이 항상 참으로 평가되어 무한히 반복되는 현상이다.
따라서 while문을 작성할 때는 조건식이 false로 평가되는 순간이 있는지 반드시 주의!
do...while 문
while 뒤에 오는 조건식이 true로 평가되는 동안 do 뒤에 오는 코드블록 내부의 코드를 반복하여 실행
단, 이 경우 do의 코드블록 내부의 코드가 최소 한 번은 실행
(뒤에 오는 조건문이 항상 fasle이라도)
for문, while문
for문과 while문의 용도는 명확하게 구분되지 않는다.
while문으로 할 수 있는 것을 for문으로 구현이 가능하고,
for문으로 할 수 있는 것을 while문으로 구현이 가능하기 때문이다.
그러나 주로 사용하는 상황은 있다.
for문을 사용하는 경우
반복 횟수가 비교적 명확할 때
배열, 문자열 내부를 순회할 때
반복문의 중첩이 필요할 때
while문을 사용하는 경우
반복 횟수가 명확하지 않을 때
'코드스테이츠 프론트과정' 카테고리의 다른 글
코드스테이츠 프론트엔드과정 10 [Linux/Git 기초] - 14일차 (0) | 2023.04.24 |
---|---|
코드스테이츠 프론트엔드과정 9 [간단한 웹앱 만들기] - 11일차 (0) | 2023.04.21 |
코드스테이츠 프론트엔드과정 7 [조건문] - 9일차 (0) | 2023.04.19 |
코드스테이츠 프론트엔드과정 6 [JavaScript 기초] - 8일차 (0) | 2023.04.18 |
코드스테이츠 프론트엔드과정 5 [HTML&CSS 활용] - 7일차 (2) | 2023.04.17 |