new Map() 기능은 {key-value} pair 를 저장한다. 객체도 그러하지만 new Map()만의 장점을 아래 정리해 본다.
1) key 에 문자열 뿐만 아니라 다양한 값이 올 수 있다.
2) myMap.keys() 와 같은 메소드로 iterator를 리턴받을 수 있으며 이 iterator는 이름만큼이나 반복문에 집어넣어 돌리기에 적합하다.
코드와 주석(!) 을 보자.
const myMap = new Map(); // Map 하나를 새로 만든다.
myMap.set('one', 1) // key-value pair 를 만든다.
myMap.set('two', 2)
myMap.set('three', 3)
console.log(myMap.keys()) // key들의 iterator가 출력된다. for of 구문 적용 가능하다.
console.log(myMap.values())
console.log(myMap.entries())
for (const key of myMap.keys()) {
console.log(key);
} // key들로 구성된 iterator 에 for ~ of 문법을 적용해 순회한다.
for (const value of myMap.values()) {
console.log(value);
} // value들로 구성된 iterator 에 for ~ of 문법을 적용해 순회한다.
for (const entry of myMap.entries()) {
console.log(`${entry[0]}: ${entry[1]}`);
} // entry들로 구성된 iterator 에 for ~ of 문법을 적용해 순회한다.
// entry[0] 은 key, entry[1]은 value가 될 것이다. console.log(myMap.entries()) 결과 참조.
console.log(myMap.get('one')) //파라미터에 key를 넣어야 하며 그 key의 값을 반환한다.
console.log(myMap.has('five')) //파라미터에 key를 넣어야 하며 그 key가 myMap에 있는지 확인한다.
myMap.delete('one') // 파라미터에 키를 넣어야 하며 해당 키를 삭제한다.
console.log(myMap)
console.log(myMap.size) // delete 했기 때문에 요소의 개수가 작아진 것을 볼 수 있다.
한 번에 집중해서 콘솔창 돌려보면 되겠다.
'자바스크립트 리뷰' 카테고리의 다른 글
메모리: 변수와 상수 그리고 불변하다와 불변하지 않다. [ JS문법 종합반 3주차] (0) | 2023.04.11 |
---|---|
new Set() 기본개념과 교집합 구하는 메소드 만들기 [JS문법 종합반 2주차 - 3] (0) | 2023.04.10 |
prompt() 메소드 [혼공자 확인문제 2-3-5] (0) | 2023.04.08 |
const로 상수를 만들면 바로 값을 지정해야 한다 [혼공자 확인문제 2-2-3] (0) | 2023.04.08 |
증감연산자 ++num 등 [혼공자 확인문제 2-2-4] (0) | 2023.04.08 |