Map 이란
Map()
을 통해 Map을 생성할 수 있습니다.
Map은 자바스크립트에 내장된 표준 객체(Standard Built-in Object) 이며, key-value 쌍의 컬렉션입니다.
Map의 특징
key를 사용해서 value를 get, set할 수 있습니다.
key 값은 중복이 될 수 없으며, 하나의 key에는 하나의 value만 올 수 있습니다.
Object와의 차이점
Object는 String
과 Symbol
타입만 key로 사용가능 하지만, key는 String
, Symbol
, Object
, Function
을 사용할 수 있습니다.
Map은 Object와 달리 iterable 입니다.
Map의 메서드
WeakMap 이란
key가 약하게 참조되는 key-value 쌍의 컬렉션입니다.
Map과의 차이점을 꼽는다면 다음과 같습니다.
· key는 반드시 Object
여야 합니다.
· 해당 객체가 더 이상 존재하지 않게 되면 key-value 쌍이 WeakMap에서 제거됩니다.
참고하면 좋은 글
자바스크립트 ES6 Map 타입
ES6에 새로 추가된 Map 타입의 기본 문법과 특징을 간단하게 알아보겠습니다. Map은 key와 value가 [key, value] 형식으로 이루어진 리스트입니다. Map 생성 및 요소 추가 Map 객체 생성은 다음과 같이 new Map()으로 하며 set으로 요소를 추가할 수 있습니다. String, Symbol 외 타입을 키로 사용 가능 Ob...
velog.io
[ES6] 13. Map, WeakMap
Blog posted about front end development
jaeyeophan.github.io
Map
Map ES6 이전에는 키와 값을 연결하려면 객체를 이용했다. 하지만 단순 객체를 사용한다면 아래의 단점이 발생한다. 프로토타입 체인으로 의도하지 않은 연결이 발생. 객체 안에 프로퍼티의 수를 쉽게 알아내기 힘들다. 객체는 프로퍼티 순서를 보장하지 않는다. 키는 반드
velog.io
'개발 > Javascript' 카테고리의 다른 글
객체 리터럴 사용 시, 값이 undifined라고 뜬다면.. (0) | 2020.04.22 |
---|---|
ES6 Set과 Destructuring 을 이용한 로또 번호 생성기 (0) | 2020.04.11 |
ES6 Set과 WeakSet (0) | 2020.04.10 |
ES6 디스트럭쳐링(Destructuring) (0) | 2020.04.10 |
ES6 String에 추가된 메서드들 (0) | 2020.04.09 |