일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- greedy
- 코딩테스트
- React
- 정렬
- Lv2
- 백준
- 자바
- javascript
- Typescript
- node.js
- 프로그래머스
- CLASS
- 프로그래머스 JS
- Lv1
- 네트워크
- 자바스크립트
- Next.js
- 알고리즘
- bfs/dfs
- js
- Java
- CSS
- Python
- 연습문제
- 이것이 코딩테스트다 with 파이썬
- 코딩테스트 입문
- Baekjoon
- 그리디
- SWEA
- programmers
Archives
- Today
- Total
개발야옹
[ Javascript ] Map Object 본문
Map Object
Map Object는 key-value 쌍을 보유하고 있으며, 키의 삽입순서를 기억하고 있다.
key를 사용하여 value를 get, set할 수 있다.
key는 중복될 수 없으며, 하나의 key에는 하나의 value만 저장 가능
key로 사용할 수 있는 데이터 : string, symbol(ES6), object, function => number는 key로 사용이 불가능하다.
const map = new Map();
map.set('a',1);
map.set('b',2);
map.set('c',3);
console.log(map.get('a')); // 1
Map method
- Map.prototype.size : Map 객체의 키-값 쌍의 갯수 반환
- Map.prototype.get : Map.get('key') 해당하는 key의 value를 반환
- Map.prototype.set : Map.set('key','value') 키와 값을 map에 넣어줌
- Map,prototype.clear : Map 객체를 비워준다. === size 를 0으로 만들어준다.
- Map.prototype.forEach :
// Arrow function forEach(() => { /* ... */ } ) forEach((value) => { /* ... */ } ) forEach((value, key) => { /* ... */ } ) forEach((value, key, map) => { /* ... */ } ) // Callback function forEach(callbackFn) forEach(callbackFn, thisArg) // Inline callback function forEach(function() { /* ... */ }) forEach(function(value) { /* ... */ }) forEach(function(value, key) { /* ... */ }) forEach(function(value, key, map) { /* ... */ }) forEach(function(value, key, map) { /* ... */ }, thisArg) // Array.prototype.forEach와 통일성을 유지하기 위해서 parm순서 value, key
- Map.prototype.delete : Map.delete('key') 해당 key와 value 쌍을 map collection에서 삭제
- Map.prototype.has : Map.has('key') 해당 key에 해당하는 value가 존재하는지 확인 boolean return
- Map.prototype.entries : Map.entries(); 는 map안의 모든 entry들을 순회할 수 있는 iterable object를 반환해준다.
const map = new Map(); map.set('a',1); map.set('b',2); map.set('c',3); const entMap = map.entries(); console.log(entMap.next().value); // ['a', 1] console.log(entMap.next().value); // ['b', 2] console.log(entMap.next().value); // ['c', 3]
- Map.prototype.keys() : entries 와 같이 map안의 모든 key값을 순회할 수 있는 iterable object를 반환해준다.
const map = new Map(); map.set('a',1); map.set('b',2); map.set('c',3); const entMap = map.keys(); console.log(entMap.next().value); // a console.log(entMap.next().value); // b console.log(entMap.next().value); // c
- Map.prototype.values() : map안의 모든 value들을 순회할 수 있는 iterable object를 반환
const map = new Map(); map.set('a',1); map.set('b',2); map.set('c',3); const entMap = map.values(); console.log(entMap.next().value); // 1 console.log(entMap.next().value); // 2 console.log(entMap.next().value); // 3
[+] 참고하면 좋을 블로그
https://medium.com/@hongkevin/js-5-es6-map-set-2a9ebf40f96b
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map/set
728x90
'Language > Javascript' 카테고리의 다른 글
[ Javascript ] Class { ES6 (ES2015) } (0) | 2022.02.20 |
---|---|
[ Javascript ] Set Object (0) | 2022.01.11 |
[ Javascript ] Array.prototype.includes() (0) | 2022.01.11 |
[ Javascript ] Array.prototype.filter() & filter 메서드 (0) | 2022.01.11 |
[ Javascript ] Array.prototype.map() & map 메서드 (0) | 2022.01.11 |