[javascript] 맵과 셋의 데이터를 객체로 변환하는 방법

자바스크립트에서 맵(Map)셋(Set)은 유용한 데이터 구조입니다. 맵은 키-값 쌍을 저장하고, 셋은 중복을 허용하지 않는 값을 저장합니다. 때때로 맵이나 셋에 있는 데이터를 객체로 변환해야 할 때가 있습니다. 이 블로그에서는 맵과 셋의 데이터를 객체로 변환하는 방법에 대해 알아보겠습니다.

맵을 객체로 변환하기

맵을 객체로 변환하는 가장 간단한 방법은 Object.fromEntries() 메서드를 사용하는 것입니다. 예를 들어, 다음과 같이 맵을 객체로 변환할 수 있습니다.

const myMap = new Map([
  ['key1', 'value1'],
  ['key2', 'value2']
]);

const myObject = Object.fromEntries(myMap);
console.log(myObject); // { key1: 'value1', key2: 'value2' }

위 예제에서 Object.fromEntries() 메서드는 맵을 객체로 변환해 주는데, 맵의 각 키-값 쌍이 새로운 객체의 프로퍼티로 변환됩니다.

셋을 객체로 변환하기

셋을 객체로 변환하는 방법은 맵보다 더 직접적입니다. 셋에서는 값만을 가지고 있기 때문에, 각 값을 키로 하고 빈 값 (예를 들어 true)을 값으로 가지는 객체로 변환할 수 있습니다. 다음은 셋을 객체로 변환하는 예제입니다.

const mySet = new Set(['value1', 'value2', 'value3']);
const myObject = {};

mySet.forEach((value) => {
  myObject[value] = true;
});

console.log(myObject); // { value1: true, value2: true, value3: true }

요약

이 블로그에서는 맵과 셋의 데이터를 객체로 변환하는 방법에 대해 알아보았습니다. 맵의 경우 Object.fromEntries() 메서드를 사용하여 간단히 객체로 변환할 수 있고, 셋의 경우 forEach() 메서드를 사용하여 각 값을 객체의 키로 변환할 수 있습니다.

맵과 셋은 데이터를 다룰 때 유용하지만, 때로는 일반 객체로 변환해야 하는 경우가 있습니다. 이러한 변환 기술은 자바스크립트에서 데이터를 다루는 데 유용한 도구입니다.

참고 문헌: