JavaScript

[JS] 반복문

_doit 2024. 9. 8. 20:43
728x90
반응형

[ for반복문]

  • 반복 횟수를 정확하게 제어할 때.
  • 배열의 인덱스를 직접 사용해서 반복할 때.

예시: 배열 순회

let fruits = ['apple', 'banana', 'orange'];

for (let i = 0; i < fruits.length; i++) {
    console.log(fruits[i]); // 'apple', 'banana', 'orange'
}

 

예시: 숫자 출력

for (let i = 1; i <= 5; i++) {
  console.log(i);  // 1, 2, 3, 4, 5 출력
}

 

 

[ for...in 반복문]

  • 객체의 키 또는 배열의 인덱스를 반복.
  • 객체배열의 프로퍼티 이름을 반복하고 싶을 때 사용.

예시: 객체의 키 순회

let person = {
  name: 'Alice',
  age: 25,
  city: 'New York'
};

for (let key in person) {
  console.log(key);         // 'name', 'age', 'city' 출력
  console.log(person[key]);  // 'Alice', 25, 'New York' 출력
}

 

예시: 배열의 인덱스 순회

let arr = ['a', 'b', 'c'];

for (let index in arr) {
  console.log(index);  // 0, 1, 2 출력 (인덱스)
  console.log(arr[index]);  // 'a', 'b', 'c' 출력 (값)
}

 

[for …of 반복문]

  • 배열, Set, Map 등 이터러블 객체의 값을 반복 ( for of 구문을 사용하기 위해선 컬렉션 객체가 [Symbol.iterator] 속성을 가지고 있어야 한다)
  • 을 직접 다루고 싶을 때 사용.
더보기

iterator는 반복자라는 말이에요. 요소 하나하나를 반복할 수 있도록 배열 또는 객체와 비슷한 형태로 열거되어있는 자료구조로 이해해주시면 돼요.

 

예시: 배열의 값 순회

let arr = ['a', 'b', 'c'];

for (let value of arr) {
  console.log(value);  // 'a', 'b', 'c' 출력
}

 

예시: Map 순회

const myMap = new Map();
myMap.set('one', 1);
myMap.set('two', 2);

for (const key of myMap.keys()) {
  console.log(key);   // 'one', 'two'
}

for (const value of myMap.values()) {
  console.log(value);  // 1, 2
}

for (const entry of myMap.entries()) {
  console.log(`${entry[0]}: ${entry[1]}`);     // 'one: 1', 'two: 2'
}

 

예시: Set 순회

const mySet = new Set();
mySet.add('value1');
mySet.add('value2');

for (const value of mySet.values()) {
  console.log(value);  			 // 'value1', 'value2'
}

 

예시: 객체 순회

let person = {
  name: 'Alice',
  age: 25,
  city: 'New York'
};

// 객체의 키 순회 (배열로 변환 후 순회)
for (let key of Object.keys(person)) {
  console.log(key);  // 출력: 'name', 'age', 'city'
}

// 객체의 값 순회 (배열로 변환 후 순회)
for (let value of Object.values(person)) {
  console.log(value);  // 출력: 'Alice', 25, 'New York'
}

// 객체의 키-값 쌍 순회 (배열로 변환 후 순회)
for (let [key, value] of Object.entries(person)) {
  console.log(`${key}: ${value}`);  // 출력: 'name: Alice', 'age: 25', 'city: New York'
}

 

요약

  • for 반복문: 특정 횟수나 인덱스를 기반으로 반복. 배열이나 숫자를 순회할 때 적합.
  • for...in 반복문: 객체의 키나 배열의 인덱스를 순회할 때 사용. 객체의 프로퍼티를 다루는 데 유용.
  • for...of 반복문: 배열, Set, Map 같은 이터러블 객체의 값을 직접 다룰 때 사용.
728x90
반응형