Notice
Recent Posts
Recent Comments
«   2024/07   »
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 31
Tags more
Archives
Today
Total
관리 메뉴

HYEWON JUNG의 개발일지

Map(); 본문

JavaScript

Map();

혜won 2023. 10. 26. 09:47

데이터 구성, 검색 , 사용을 효율적으로 처리

=> key / value  = key에 어떤 데이터 타입도 들어올 수 있다. 

=> Map은 key 가 정렬된 순서로 저장되기 때문

=> 기능 (검색, 삭제, 제거, 여부확인)

=> 반복 method (keys(), values(), entries())

const myMap = new Map();
myMap.set ('key', 'value'); // 넣기
.
.
.
myMap.get('key')//가져오기

↓↓

const myMap = new Map(); 
	myMap.set("one", 1)
    myMap.set("two", 2)
    myMap.set("three", 3)
    
//반복자(keys, values, entries)
//반복자를 풀지 않고 그대로 쓸 경우 
console.log(myMap.keys()) // Map Iterator {one, two, three}

/for문을 사용 할 경우
for(const key of myMap.keys()){
	console.log(key)
}//one two three

for(const value of myMap.values()){
	console.log(value)
}//1 2 3

for(const entry of myMap.entries()){
	console.log(entry)
}//['one', 1]['two', 2]['three', 3]

Map의 길이 확인 법

console.log(myMap.size)

Map에 내용이 있는지 검색?

console.log(myMap.has("two")) //true

=> key 기반 존재 검색 

 

const arr = [1, 2, 33, 14, 5]

const result = arr.Map(function(value, idx){
	return 새로만들 배열의 조건 예를 들어  value * 2
})

console.log(result)// [2, 4, 66, 28, 10]

 

cosnt arr = [1, 5, 3 ,8 ,9]

const result= arr.Map(function(value, idx){
	return {
    		key : idx
            value : value * 3
    }
})

console.log(result)
//[{key 0: , value: 3}]
//[{key 1: , value: 15}]
//[{key 2: , value: 9}]
//[{key 3: , value: 24}]
//[{key 4: , value: 27}]

filter와 return 값으로 새 배열을 내놓는 것은 같지만 Map의 경우 무조건 배열의 갯수 만큼 뱉어낸다. 

+chaining