지도
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