지도
Map은 키 값 쌍을 보유하고 키의 실제 삽입 순서를 기억합니다. 지도는 고유한 값만 저장할 수 있습니다.
구문
new Map([iterable])
사례-1:지도 부재
Map이 없는 경우 javascript 객체는 하나의 키 객체만 승인하므로 여러 키를 제공하면 마지막 키만 기억됩니다. 다음 예에서는 및 b와 같은 많은 키를 제공했음에도 불구하고 b만 기억되고 출력으로 표시됩니다. 따라서 이러한 단점을 제거하기 위해 "Map"이 자바스크립트에 존재하게 되었습니다.
예시
<html> <body> <script> const x = {}; const a = {}; const b = { num:3 } x[a] = "a"; x[b] = "b"; document.write(JSON.stringify(x)); </script> </body> </html>
출력
{"[object Object]":"b"}
case-2:지도의 존재
Map이 키의 실제 삽입 순서를 기억할 것이라는 정의에서 알 수 있듯이 '{}'와 같은 모든 키와 값 쌍을 키로 표시하고 'a'에는 출력에 표시된 대로 값 등이 있습니다.
예시
<html> <body> <script> const a = {}; const b = { num:3 } const map = new Map(); map.set(a, "a").set(b, "b"); for(let[key, value] of map.entries()){ document.write(JSON.stringify(key, value)); // displaying key using Map document.write((key, value)); // displaying value using Map } </script> </body> </html>
출력
{}a {"num":3}b