Enjoy Programming

[ES6] MAP && Weak Map 본문

JavaScript/Vanilla Js

[ES6] MAP && Weak Map

LEETAEEON 2021. 7. 6. 12:22

https://developer.mozilla.org/ko/docs/orphaned/Web/JavaScript/Reference/Global_Objects/Map/Map

 

Map() 생성자 | MDN

Map() 생성자는 Map 객체를 생성합니다.

developer.mozilla.org

 자 map method가 아닌 Map()생성자 함수를 다뤄보자~

 

헷갈리지 말자 생성자이다. Map객체를 생성해준다. Set은 value에 대해서만 작동을 한다면

Map은 key와 value모두 포함할 수 있다. key와 value의 저장소같은 느낌이다.

 

Set은 add를 가지고 있지만 Map은 add가 없고 set을 가지고 있다.

map을 하나 만들어서 key와 value를 set해보자.

오브젝트가 하나 만들어졌고 map에 set해주면 이렇게  map에 object로 entry가 구성이 되고.

has()를 통해 해당 키가 있는지 확인 가능하고, get()으로 해당 키의 벨류를 얻을 수 있다.

많은 api를 가지고 있고 유용하다~ (map은 override가 가능하다)

 

Set과 마찬가지로 weakMap도 존재한다. 역시 object만 가질 수 있다.

https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/WeakMap

 

WeakMap - JavaScript | MDN

WeakMap 객체는 키가 약하게 참조되는 키/값 쌍의 컬렉션입니다. 키는 객체여야만 하나 값은 임의 값이 될 수 있습니다.

developer.mozilla.org

WeakSet과 마찬가지로 해당 collection의  object가 참조되지 않거나 참조되지 않는 중이라면 garbage collection취급되어 사라진다.

'JavaScript > Vanilla Js' 카테고리의 다른 글

[ES6] Proxy  (0) 2021.07.06
[ES6] generator  (0) 2021.07.06
[ES6] Set && weakSet  (0) 2021.07.06
[ES6] Symbol  (0) 2021.07.02
webAssemply 2  (0) 2021.06.25