JavaScript Map 객체의 특징과 주요 메서드 살펴보기
JavaScript의 Map
객체는 키-값 쌍을 저장하고 관리하는 특별한 자료구조입니다. 기존의 객체와 달리 다양한 자료형을 키로 사용할 수 있으며, 삽입된 순서를 유지하는 특징이 있습니다. 이 글에서는 Map 객체의 구조와 특징을 살펴보고, Map을 효과적으로 활용할 수 있는 주요 메서드에 대해 심도 있게 설명하겠습니다.
목차
- Map 객체란?
- Map 객체의 주요 특징
- Map 객체 생성 및 초기화
- 요소 추가와 삭제:
set()
과delete()
- 요소 검색:
get()
과has()
- 전체 요소 순회:
forEach()
와for...of
1. Map 객체란?
Map
객체는 키-값 쌍을 저장하기 위한 JavaScript의 내장 객체입니다. 일반 객체와 달리, 키로 숫자, 문자열, 객체 등 다양한 데이터 타입을 사용할 수 있습니다. 또한, Map은 삽입된 순서를 유지하는 특성을 가지므로, 데이터의 순서가 중요한 경우 유용하게 사용할 수 있습니다.
2. Map 객체의 주요 특징
- 다양한 키 자료형 지원: Map 객체는 숫자, 문자열, 객체 등 모든 데이터 타입을 키로 사용할 수 있습니다. 이는 JavaScript의 일반 객체와 차별화되는 중요한 특징입니다.
- 키-값 쌍의 개수 확인:
size
속성을 통해 Map 객체에 포함된 키-값 쌍의 개수를 쉽게 확인할 수 있습니다.
예시:map.size;
- 순서 유지: Map은 삽입된 순서를 유지하므로, 데이터를 추가한 순서대로 키-값 쌍을 저장하고 관리할 수 있습니다.
- 반복 가능한 구조: Map 객체는
forEach()
와for...of
같은 반복문을 통해 순회할 수 있어, 데이터 탐색과 처리가 간편합니다.
3. Map 객체 생성 및 초기화
Map 객체는 new Map()
구문을 통해 생성합니다. 생성 시, 초기값을 배열 형태로 전달하여 초기화할 수도 있습니다. 이때, 각 배열의 요소는 [key, value] 형태의 배열이어야 합니다.
예시:
const map = new Map(); // 빈 Map 생성
const initializedMap = new Map([
["key1", "value1"],
["key2", "value2"]
]); // 초기값을 가진 Map 생성
4. 요소 추가와 삭제: set()
과 delete()
Map에 요소를 추가할 때는 set()
메서드를 사용하며, 키와 값을 인자로 전달합니다. delete()
메서드를 사용하면 특정 키에 해당하는 요소를 삭제할 수 있습니다. 또한, clear()
메서드는 Map에 있는 모든 요소를 제거합니다.
예시:
const map = new Map();
map.set("name", "Alice"); // 요소 추가
map.set(123, "numberKey"); // 숫자를 키로 사용
map.delete("name"); // 특정 키 삭제
map.clear(); // 모든 요소 제거
5. 요소 검색: get()
과 has()
get()
메서드는 키를 이용해 해당 키의 값을 가져올 때 사용되며, 존재하지 않는 키에 대해 undefined
를 반환합니다. has()
메서드는 Map에 특정 키가 존재하는지 확인할 때 유용합니다.
예시:
const map = new Map([["name", "Alice"]]);
console.log(map.get("name")); // 결과: "Alice"
console.log(map.has("name")); // 결과: true
console.log(map.has("age")); // 결과: false
6. 전체 요소 순회: forEach()
와 for...of
Map 객체는 forEach()
메서드를 사용해 각 요소를 순회할 수 있습니다. for...of
반복문을 활용하여 키, 값, 또는 [key, value] 쌍을 순회할 수도 있습니다. 이를 통해 Map에 저장된 데이터를 효율적으로 처리할 수 있습니다.
예시:
const map = new Map([
["name", "Alice"],
["age", 30]
]);
// forEach를 사용한 순회
map.forEach((value, key) => {
console.log(key, value);
});
// for...of를 사용한 순회
for (const [key, value] of map) {
console.log(key, value);
}
'프로그래밍 언어 > 자바스크립트' 카테고리의 다른 글
JavaScript WeakMap의 기본 사용법과 활용 사례 (0) | 2024.11.18 |
---|---|
JavaScript Set, 중복 없는 데이터 관리와 활용법 (0) | 2024.11.12 |
JavaScript 정규 표현식(RegExp) 기본 개념부터 실전 활용까지 (0) | 2024.10.31 |
JavaScript Date 객체, 시간과 날짜 다루기 (0) | 2024.10.25 |
함수형 프로그래밍과 JavaScript, Function 활용법 (0) | 2024.10.18 |