[javascript] 맵과 셋의 필터링 기능 사용 방법
자바스크립트에서 Map
과 Set
을 사용하여 데이터를 필터링하는 방법에 대해 알아봅시다.
맵(Map) 필터링
맵(Map)은 key-value 쌍의 컬렉션으로, Map.prototype.entries()
메서드를 사용하여 필터링할 수 있습니다. 예를 들어, 다음과 같은 Map
이 있다고 가정해봅시다.
let map = new Map([
['apple', 1],
['banana', 2],
['orange', 3]
]);
이제 우리는 이 맵을 필터링하여 값을 기준으로 새로운 맵을 만들어 볼 수 있습니다.
let filteredMap = new Map([...map.entries()].filter(([key, value]) => value > 1));
console.log(filteredMap); // Map(2) { 'banana' => 2, 'orange' => 3 }
위의 예제에서, filter()
메서드를 사용하여 값이 1보다 큰 새로운 맵을 만들었습니다.
셋(Set) 필터링
셋(Set)은 중복을 허용하지 않는 값의 컬렉션으로, Set.prototype.values()
메서드를 사용하여 필터링할 수 있습니다. 예를 들어, 다음과 같은 Set
이 있다고 가정해봅시다.
let set = new Set([1, 2, 3, 4, 5]);
이제 우리는 이 셋을 필터링하여 특정 조건을 만족하는 값만 남길 수 있습니다.
let filteredSet = new Set([...set.values()].filter(value => value > 2));
console.log(filteredSet); // Set(3) { 3, 4, 5 }
위의 예제에서, filter()
메서드를 사용하여 값이 2보다 큰 새로운 셋을 만들었습니다.
결론
맵과 셋을 필터링하는 방법에 대해 간단히 살펴보았습니다. 이러한 기능은 데이터를 다룰 때 유용하게 활용될 수 있습니다.
더 많은 정보는 MDN web docs에서 확인할 수 있습니다.
MDN web docs - Map.prototype.entries()
MDN web docs - Set.prototype.values()