Map과 Object

somedaycode·2021년 1월 26일
0
post-custom-banner

알고리즘 책을 읽으며 해시 테이블이 무엇인지 대략적으로 알게 되었다. 해시 함수를 통해 key값을 알고 있다면, key값에 맞는 value를 아주 손쉽게 가져올 수 있다.
예를들어, 각 음식의 칼로리를 알고싶다? Food['pizza']를 통해 피자의 칼로리를 알 수 있다.

지금까지 해시 함수 혹은, 해시맵, 맵, 해시테이블에 관해 아주 간략하게 설명했다.

여기서 의문이 생겼다. 이미 Object로 key와 value값을 지정하고 원하는 탐색을 할 수 있는데 Map은 무엇이 다를까?

ES6에서는 Map객체를 통해 key와 value값을 연결시켜 저장할 수 있다.
Map.set map.delete map.get map.has를 통해 손쉽게 값을 지정하고 지우고 가져오며 확인할 수 있다.

차이점은 다음과 같다.
Object의 key값은 문자열(strings)이다.
Map.size를 통해 크기를 쉽게 알 수 있다.
Map은 넣은 순서대로 반복이 된다.

MDN에서는 모든 Key와 value의 타입이 일정하다면 Map을 사용하라는 팁이 쓰여져 있음을 확인할ㅡ 수 있다.

...핸드폰으로 끄적인 메모

profile
천천히 꾸준히
post-custom-banner

1개의 댓글

comment-user-thumbnail
2021년 2월 15일

오호 대충 그런가보다~ 하고 있던 것들인데 이런 차이점들이 있었네요!👍
그런데 다음편은 언제 연재되나요 somedaycode님~? 😬
ㅎㅎ

답글 달기