[javascript] 객체 순회와 콜백 함수의 조합 사용하기

자바스크립트에서 객체를 순회하면서 각 요소에 대해 콜백 함수를 적용할 수 있습니다. 이 기능은 객체의 키/값 쌍에 대해 반복 작업을 수행할 때 매우 유용합니다. 이번 글에서는 객체 순회와 콜백 함수의 조합을 사용하는 방법에 대해 살펴보겠습니다.

1. for...in 루프를 사용한 객체 순회

가장 기본적인 방법은 for...in 루프를 사용하여 객체의 키/값 쌍을 순회하는 것입니다.

const person = { name: 'Alice', age: 30, job: 'Developer' };

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

2. Object.keys()forEach() 메서드를 활용한 객체 순회

Object.keys() 메서드를 사용하여 객체의 키들을 배열로 얻은 후, forEach() 메서드를 활용하여 순회할 수도 있습니다.

const person = { name: 'Alice', age: 30, job: 'Developer' };

Object.keys(person).forEach(key => {
  console.log(`${key}: ${person[key]}`);
});

3. Object.entries()와 디스트럭처링을 활용한 객체 순회

Object.entries() 메서드를 사용하여 키/값 쌍의 배열을 얻은 후, 디스트럭처링을 활용하여 객체의 각 요소를 순회할 수도 있습니다.

const person = { name: 'Alice', age: 30, job: 'Developer' };

for (const [key, value] of Object.entries(person)) {
  console.log(`${key}: ${value}`);
}

각 방법의 장단점

for...in 루프는 가장 간단한 방법이지만, 프로토타입 체인 상에 있는 열거 가능한 속성들도 포함하여 순회하기 때문에 원하지 않는 속성까지 가져올 수 있습니다. 반면 Object.keys()Object.entries()를 사용하면 프로토타입 체인 상의 속성을 무시할 수 있습니다.

콜백 함수와의 조합

이러한 방법들을 통해 객체를 순회하면서 콜백 함수를 적용할 수 있습니다. 콜백 함수를 활용하여 원하는 작업을 할 수 있으며, 이를 통해 객체의 각 요소에 대해 일괄 작업을 수행할 수 있습니다.

마무리

자바스크립트에서 객체를 순회하고, 콜백 함수를 이와 함께 사용하는 방법에 대해 알아보았습니다. 적절한 순회 방식을 선택하여 객체의 요소에 대해 효과적으로 작업을 수행할 수 있습니다.

참고문헌