자바스크립트 - 지도

자바스크립트 - 지도

2022-10-19 last update

5 minutes reading beginners programming javascript webdev
헤이 👋, 모두 건강하시길 바랍니다! JavaScript에서 Map에 대해 이야기합시다!

지도 🗺️



JavaScript(JS)의 지도를 사용하면 키-값 관계를 사용하여 정보/데이터를 저장할 수 있습니다. 하지만 잠깐만... JS의 Object와 동일하지 않습니까? Object를 사용하면 지도가 typeof를 반환하지만 정확히 동일하지는 않습니다. 그것들은 본질적으로 매우 유사하지만 용도를 결정하는 뚜렷한 차이점이 있습니다.

그렇다면 이러한 뚜렷한 차이점은 무엇입니까? Object 를 사용하는 경우 키는 String 또는 Symbol 데이터 유형이어야 하지만 Map 의 키는 FunctionObject 를 포함한 모든 데이터 유형이 될 수 있습니다. 또 다른 점은 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 ) 데이터 유형으로 제한되지 않는 키-값 쌍으로 데이터를 저장할 수 있습니다. 또한 데이터를 직접 반복할 수 있는 기능도 제공합니다. 또한 지도에는 컬렉션의 데이터를 추가, 액세스, 편집 및 삭제하는 데 사용할 수 있는 고유한 속성과 메서드가 있습니다.

이 짧은 게시물을 읽어주셔서 감사합니다. 정보를 추가하거나 피드백을 제공하려면 댓글을 남겨주세요 😀.