ES6 Map과 WeakMap

2020. 4. 11. 22:57·개발/Javascript
728x90

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
'개발/Javascript' 카테고리의 다른 글
  • 객체 리터럴 사용 시, 값이 undifined라고 뜬다면..
  • ES6 Set과 Destructuring 을 이용한 로또 번호 생성기
  • ES6 Set과 WeakSet
  • ES6 디스트럭쳐링(Destructuring)
기짜낭
기짜낭
생각이 많지만, 지금 내가 해야할 것을 하자.
  • 기짜낭
    So tired
    기짜낭
    • 분류 전체보기 (199)
      • 개발 (11)
        • Javascript (19)
        • Typescript (5)
        • Canvas (8)
        • React (13)
        • C (3)
      • 활동 (63)
        • 개인 프로젝트 (33)
        • 나눔 서포터즈 3기 (9)
        • 멋쟁이 사자처럼 (7)
        • 0&1 C++ 자료구조 스터디 (0)
        • 제 9회 창업 아이디어톤 (3)
        • Poom (ZeroWasteShop) (3)
        • 해커톤 (2)
        • 우테코 프리코스 7기 (6)
      • 알고리즘 (27)
        • 알고리즘 정리 (5)
        • 백준 (18)
        • 프로그래머스 (4)
      • 강연 (7)
      • 독서 (18)
      • 회고 & 생각 (16)
        • 연간회고 (4)
      • 기타 (5)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

    • ※ 예전 블로그
  • 인기 글

  • 태그

    3기
    독후감
    HTML
    개발자
    1주에 1권씩
    알고리즘
    ES6
    개념
    군대
    백준
    CSS
    프로젝트
    프로그래밍
    react
    개발
    Javascript
    디자인
    Erica
    프론트엔드
    TypeScript
    타입스크립트
    tutorial
    HTML5
    에리카
    우테코
    1주 1권
    한양대학교
    독서
    대학
    canvas
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.0
기짜낭
ES6 Map과 WeakMap
상단으로

티스토리툴바