자바스크립트 맵과 셋의 여러 가지 활용

자바스크립트에서는 데이터를 다루는 많은 도구들이 있습니다. 이 중에서 맵(Map)셋(Set)은 많은 개발자들에게 편리하게 사용되고 있습니다. 이번 포스트에서는 맵과 셋의 여러 가지 활용 방법에 대해 알아보겠습니다.

맵(Map)의 활용

맵(Map)은 쌍으로 이루어진 데이터를 저장할 수 있는 자료구조입니다. 이러한 맵을 활용하면 데이터를 효율적이고 가독성 있게 관리할 수 있습니다.

간단한 맵 예제

// 맵 생성
const myMap = new Map();

// 데이터 추가
myMap.set('name', 'John');
myMap.set('age', 30);

// 데이터 조회
console.log(myMap.get('name')); // 출력: John
console.log(myMap.get('age')); // 출력: 30

// 데이터 삭제
myMap.delete('age');

// 맵 크기 확인
console.log(myMap.size); // 출력: 1

객체와의 차이점

맵은 객체와 유사해 보일 수 있지만, 맵은 키에 어떤 값이든지 저장할 수 있고, 키의 순서가 보장됩니다. 따라서 맵은 데이터를 순회하거나 정렬하는 데 유용합니다.

맵을 활용한 반복문

맵을 반복문과 함께 사용하면 데이터를 효율적으로 처리할 수 있습니다.

// 맵 생성
const myMap = new Map();

myMap.set('apple', 10);
myMap.set('banana', 5);
myMap.set('orange', 7);

// 맵 순회
for (const [key, value] of myMap) {
  console.log(`${key}: ${value}`);
}

셋(Set)의 활용

셋(Set)은 중복되지 않는 값을 저장하는 자료구조입니다. 이러한 셋을 활용하면 데이터의 중복을 효과적으로 제거하고 유일한 값을 유지할 수 있습니다.

간단한 셋 예제

// 셋 생성
const mySet = new Set();

// 데이터 추가
mySet.add('apple');
mySet.add('banana');
mySet.add('apple'); // 중복 값은 추가되지 않음

// 데이터 조회
console.log(mySet.has('apple')); // 출력: true
console.log(mySet.has('orange')); // 출력: false

// 데이터 삭제
mySet.delete('banana');

// 셋 크기 확인
console.log(mySet.size); // 출력: 1

배열 중복 제거

셋은 배열에서 중복된 값을 제거하는 데 매우 유용합니다.

const numbers = [1, 1, 2, 3, 3, 4, 5, 5];

const uniqueNumbers = [...new Set(numbers)];

console.log(uniqueNumbers); // 출력: [1, 2, 3, 4, 5]

마무리

맵과 셋은 자바스크립트에서 데이터를 다루는 데 유용한 도구입니다. 맵은 데이터를 순회하거나 정렬하는 데 사용되며, 셋은 데이터 중복을 효과적으로 관리할 수 있습니다. 이러한 맵과 셋의 활용을 통해 코드의 가독성과 효율성을 높일 수 있습니다. 자바스크립트에서는 다양한 내장 자료구조를 제공하니, 필요에 따라 적절한 자료구조를 선택하여 활용하면 좋습니다.