JavaScript

[JS] 코딩테스트 005 - FOR문~ 반복문***(중요)

Irene1988 2025. 2. 15. 23:30
문제5 : for문 계산

let a = 10;
let b = 2;

for(let i=1; i<5; i+=2){
    a += i;
}

console.log(a+b);


1)  10
2)  12
3)  14
4)  16

 

=> 답: 4번 16

 

위의 for문을 풀어보자~~

for(let i = 1; i <5; i=i+2){

 a = a + i;

}

 

i가 한번씩 돌고나서 i값은 2가 더해져서 증가한다.

다시 말하자면

i 가 1일때 a = 10, i= 1 ==> a+i = 11

i가 한번 더 돌면서 2가 증가한다. (i+=2) a = 11, i = 3 ==> 14

그리고 i가 추가로 돌면서 i값은 5가 되는데, i<5 조건에 걸려 결국 종료된다.

그러면 최종 a값은 14이며 b=2 이기 때문에 a+b는 16이다.

 


자바스크립트에서 반복문(Loop)은 코드를 여러 번 실행할 때 사용됩니다.
자주 사용되는 반복문에는 for, while, do...while, forEach, for...in, for...of 등이 있어요.

 

🔹 1. for 반복문 (기본 반복문)

가장 일반적인 반복문으로, 특정 횟수만큼 반복할 때 사용합니다.

 

✅ 기본 문법

for (초기값; 조건; 증감식) {
  // 실행할 코드
}

 

✅ 예제

for (let i = 0; i < 5; i++) {
  console.log("i의 값:", i);
}

📌 설명:
1️⃣ i = 0 : 초기값 (반복문 시작 시 한 번 실행)
2️⃣ i < 5 : 조건 (참이면 실행, 거짓이면 종료)
3️⃣ i++ : 증감식 (반복이 끝날 때마다 실행)

i의 값: 0
i의 값: 1
i의 값: 2
i의 값: 3
i의 값: 4

🔹 2. while 반복문 (조건 기반 반복)
조건이 참(true)인 동안 계속 실행합니다.

✅ 기본 문법

while (조건) {
  // 실행할 코드
}

 

✅ 예제

let count = 0;

while (count < 5) {
  console.log("count:", count);
  count++;
}

 

📌 설명:

  • count < 5가 true이면 실행
  • count++가 없으면 무한 루프 발생 주의!

🔹 결과

count: 0
count: 1
count: 2
count: 3
count: 4

🔹 3. do...while 반복문 (최소 1회 실행)

조건을 확인하기 전에 한 번은 무조건 실행합니다.

✅ 기본 문법

do {
  // 실행할 코드
} while (조건);

 

✅ 예제

let num = 5;

do {
  console.log("num:", num);
  num++;
} while (num < 3); // 조건이 거짓이지만, 최소 1회 실행됨

 

🔹 결과

num: 5

✔️ num이 처음부터 5라서 while(num < 3)는 거짓이지만, do 덕분에 한 번 실행됨!


🔹 4. forEach() (배열 전용)

배열을 순회할 때 자주 사용됩니다.

 

✅ 기본 문법

배열.forEach((요소, 인덱스, 배열) => {
  // 실행할 코드
});

 

✅ 예제

let fruits = ["🍎", "🍌", "🍇"];

fruits.forEach((fruit, index) => {
  console.log(`인덱스 ${index}: ${fruit}`);
});

 

🔹 결과

인덱스 0: 🍎
인덱스 1: 🍌
인덱스 2: 🍇

✔️ forEach()는 반복문을 종료할 수 없음 (break 사용 불가)
✔️ 단순히 모든 요소를 순회할 때 유용!


🔹 5. for...in (객체 순회)

객체의 키(key)를 반복할 때 사용합니다.

 

✅ 기본 문법

for (let key in 객체) {
  // 실행할 코드
}

 

✅ 예제

let person = { name: "Alice", age: 25, city: "Seoul" };

for (let key in person) {
  console.log(`${key}: ${person[key]}`);
}

 

🔹 결과

name: Alice
age: 25
city: Seoul

✔️ for...in은 배열에도 사용 가능하지만 권장되지 않음 (배열은 for...of 사용)


🔹 6. for...of (배열 순회)

배열, 문자열, Map, Set 등 이터러블(iterable) 객체를 순회할 때 사용합니다.

 

✅ 기본 문법

for (let 요소 of 배열) {
  // 실행할 코드
}

 

✅ 예제

let numbers = [10, 20, 30];

for (let num of numbers) {
  console.log(num);
}

 

🔹 결과

10
20
30

✔️ for...in과 달리 배열의 요소 값을 직접 순회합니다.
✔️ 객체에는 사용 불가 (for...in 사용해야 함)


🔹 7. break & continue

반복문을 제어할 때 사용됩니다.

 

✅ break (반복문 종료)

for (let i = 0; i < 5; i++) {
  if (i === 3) break; // i가 3이면 종료
  console.log(i);
}

 

🔹 결과

0
1
2

✔️ i === 3에서 break가 실행되어 반복문이 종료됨.

 


✅ continue (이번 반복 건너뛰기)

for (let i = 0; i < 5; i++) {
  if (i === 3) continue; // i가 3이면 건너뛰기
  console.log(i);
}

 

🔹 결과

0
1
2
4

✔️ i === 3일 때 continue 실행 → console.log(i)가 실행되지 않음.

 


🚀 정리

반복문 특징
for 특정 횟수 반복
while 조건이 참이면 계속 반복
do...while 최소 1회 실행 후 반복
forEach() 배열 요소 순회 (배열 전용)
for...in 객체의 key를 순회
for...of 배열 요소 값 순회 (for...in보다 추천)
break 반복문 즉시 종료
continue 현재 반복만 건너뛰고 계속 실행

 

 

 

* 위 내용은 챗GPT 답변 내용을 정리하였습니다.