ES6에 추가된 자료구조
객체(키가 있는 컬렉션을 저장하는 자료구조)와 배열(순서가 있는 컬렉션을 저장하는 자료구조)에 더하여 새로 추가된 자료구조
new Map()
: 새로운 Map 생성map.set(key, value)
: key를 이용해 value를 저장map.get(key)
: key에 해당하는 value를 반환, 해당 key가 존재하지 않으면 undefined 반환map.has(key)
: key가 존재하는지 여부를 반환
map[key]
를 사용해서는 안된다!
Map을 일반 객체처럼 취급하는 것이 되어 기존 객체가 갖는 여러 제약들을 동일하게 받게 된다. 전용 메소드인 set, get을 사용해야 한다.
map.keys()
: 각 요소의 key들을 모은 iterable 객체 반환map.values()
: 각 요소의 value들을 모은 iterable 객체 반환map.entries()
: 각 요소의 [key, value]
쌍을 모은 iterable 객체 반환new Set(iterable)
: 새로운 Set 생성, 배열을 전달받을 경우 그 값들을 Set에 넣어 반환set.add(value)
: 값을 추가한 뒤 Set 반환set.delete(value)
: 값을 제거한 후, 값이 존재하여 제거에 성공한 경우 true 아닌경우 false를 반환set.has(value)
: 값이 존재하는지 여부를 반환for .. of
나 forEach()
를 통해 반복 작업을 수행할 수 있다.