자바스크립트 - 지도
Map
에 대해 이야기해 봅시다!지도 🗺️
JavaScript(JS)의 맵을 사용하면 키-값 관계를 사용하여 정보/데이터를 저장할 수 있습니다. 하지만 잠깐만요... JS의
Object
와 같지 않나요? Object
를 사용할 때 맵이 typeof
를 반환하지만 완전히 동일하지는 않습니다. 그들은 본질적으로 매우 유사하지만 용도를 결정하는 뚜렷한 차이점이 있습니다.그렇다면 이러한 뚜렷한 차이점은 무엇입니까? 음,
Object
를 사용하는 경우 키는 String
또는 Symbol
데이터 유형이어야 하지만 Map
의 키는 Function
및 Object
를 포함한 모든 데이터 유형이 될 수 있습니다. 또 다른 것은 Object
의 크기를 찾으려면 수동으로 해야 한다는 것입니다. Object.keys()
를 사용하여 모든 키를 잡은 다음 길이를 계산합니다. 그러나 Map
에는 .size
의 크기를 반환하는 속성Map
이 있습니다.또한 객체는 지도를 사용하는 동안 직접 반복할 수 없습니다.
예:
Map
에는 고유한 방법이 있으며 아래에서 그 중 일부를 볼 수 있습니다.const cypher = {name: "Cypher", color: "white"};
const raze = {name: "Raze", color: "orange"};
const omen = {name: "Omen", color: "blue"};
const characterRoles = new Map(); // create an empty Map.
// add new data
characterRoles.set(cypher, "sentinel");
// you can chain the method to add multiple entries
characterRoles.set(raze, "duelist")
.set(omen, "smokes");
// check size
characterRoles.size // 3
// iterable
characterRoles.forEach((role, char) => {
console.log(char.name + " is a " + role)
});
// Cypher is a sentinel
// Raze is a duelist
// Omen is a smokes
데이터 구조와 알고리즘에 대해 계속 공부하면서
Map
가 JavaScript의 Hashmap과 동일하다는 것을 알게 되었고 이를 사용하여 몇 가지 문제를 해결했습니다.요약
요약하면 Map을 사용하면 데이터를
String
(또는 Symbol
) 데이터 유형으로 제한되지 않는 키-값 쌍으로 키로 저장할 수 있습니다. 또한 데이터를 직접 반복할 수 있는 기능도 제공합니다. 또한 지도에는 컬렉션의 데이터를 추가, 액세스, 편집 및 삭제하는 데 사용할 수 있는 자체 속성 및 메서드가 있습니다.이 짧은 게시물을 읽어주셔서 감사합니다. 정보를 추가하거나 피드백을 제공하려면 댓글을 남겨주세요 😀.
Reference
이 문제에 관하여(자바스크립트 - 지도), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/justtanwa/javascript-map-ko1텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)