map
: key / value 형태의 데이터를 한개의 배열로 만들어서 다시 배열에 저장하는 방식
- 기본적으로 중첩구조를 가지고 있기때문에 key중복확인 필수!
- key를 식별자로 사용하기 때문에 중복x
- get (KeyName, value) 메서드 제공
- 2차원 배열 형태와 비슷한 구조
- key의 타입은 문자로 하는 것이 원칙 = key의 타입이 달라지면 관리 어려움
- 객체의 속성명도 문자로 하는 것이 원칙
선언 및 초기화
new Map();
new Map( [ 'key' , 'value' ] , [ 'key1' , 'value1' ] ... );
예시
- https://jungeun980906.tistory.com/212 (과목, 점수를 map에 저장하고 합계,평균 등을 출력)
과목, 점수를 map에 저장하고 합계,평균 등 출력
과목, 점수를 map에 저장하고 합계,평균 등 출력
map의 key만 출력
console.log(myMap.keys());
set(key, value) 키에 해당하는 값 변경(없으면 삽입)
<script>
const myMap = new Map();
myMap.set('html',85);
myMap.set('css',90);
myMap.set('js',75);
console.log(myMap);
</script>
get(key) key에 해당하는 value값 리턴
<script>
const myMap = new Map();
myMap.set('js',75);
console.log(myMap.get('js')); //75
</script>
delete(key) key에 해당하는 값 삭제
<script>
myMap.delete('css');
</script>
has(key) 데이터의 존재여부를 true / false
<script>
console.log(myMap.has('css')); //false
</script>
forEach(callback function) map 순환
<script>
myMap.forEach(function(value, index, self){
console.log(index, value, self);
})
console.log(myMap.entries());
for(const e of myMap.entries()){
console.log(e); // [key,value]로 묶어 출력
}
for(const e of myMap.entries()){
e.forEach(function(v, k){
console.log(k,v); // 하나씩 key - value - key - value순 출력
})
}
</script>
size map 개수
console.log(myMap.size); //2
'JS > JS 공부' 카테고리의 다른 글
[JS] try~catch 예외 처리 (0) | 2023.04.18 |
---|---|
[JS] set (0) | 2023.04.18 |
[JS] 새로고침, 취소 location.reload (0) | 2023.04.18 |
[JS] 데이터 구조화 (0) | 2023.04.17 |
[JS] 정규표현식 Regular Expression (0) | 2023.04.17 |