ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • javaScript Map
    카테고리 없음 2020. 9. 4. 00:59

    ◆ Map 선언

    const mapPopDataRide = new Map();

    const mapPopDataRide = new Map();
    const mapPopDataQuit = new Map(); 
    for (var i = 0; i < popDataSelect.length; i++) {
    		let tempArrayRide = [];		
    		let tempArrayQuit = [];		
    	for (var j = 0; j < popData.length; j++) {
    		if(popDataSelect[i] == popData[j].selectName){
    			tempArrayRide.push((popData[j].ride));
    			tempArrayQuit.push((popData[j].quit));
    		}
    	} 
    	mapPopDataRide.set((popDataSelect[i]).replace(/\"/gi, "").toString(), tempArrayRide);
    	mapPopDataQuit.set((popDataSelect[i]).replace(/\"/gi, "").toString(), tempArrayQuit);
    	
    }

    ※ key 값이 검색이 안될 때가 있는데 이렇때는 "" 을 제거 하고 넣어서 검색하면 된다.

    ※ 값을 투입 할 때에는 set , 값을 가져 올때는 get("key") 

     

     

    ◆ 중복값 제거 - 순서 유지 (순서 변경 없이 )

    // 중복 값 제거
    var popDataMonth = [];
    var popDataSelect = [];
    for (var i = 0; i < popData.length; i++) {
    	popDataMonth.push(popData[i].month);
    }
    for (var i = 0; i < popData.length; i++) {
    	popDataSelect.push(popData[i].selectName);
    }
    
    
    popDataMonth = popDataMonth.reduce(function(a,b){if(a.indexOf(b)<0)a.push(b);return a;},[]);
    popDataSelect = popDataSelect.reduce(function(a,b){if(a.indexOf(b)<0)a.push(b);return a;},[]);
    

     

     

    ◆ Map 가져다 쓰기

     

    // 승차 증감율
    	tableTags += ' <tr>';
    	for (const [key, value] of mapPopDataRide) {
    		
    		for (let k = 0; k < mapPopDataRide.get(key).length; k++) {
    			console.log("사이즈 : "+mapPopDataRide.get(key).length);
    			console.log("키값을 넣었을때 값 : "+mapPopDataRide.get(key));
    			if (k===0) {
    				tableTags += '<td></td>';
    				console.log(mapPopDataRide.get(key)[k]);
    				console.log(key);
    			}
    			else if((popDataSelect[i]).replace(/\"/gi, "") == key.replace(/\"/gi, "")){
    				let tableValue = Math.ceil((((mapPopDataRide.get(key)[k] - mapPopDataRide.get(key)[k-1]) / mapPopDataRide.get(key)[k-1]) * 100));
    				if (tableValue > 0) {
    				tableTags += ' 										<td>'+tableValue+'% <div style="color:blue; display:inline">▲</div></td> ';			
    				}else {
    				tableTags += ' 										<td>'+tableValue+'% <div style="color:red; display:inline">▼</div></td> ';			
    				}
    				
    			}
    		}
    	}

     

    댓글

Designed by Tistory.