투케이2K

64. (javascript/자바스크립트) JsonArray 에 담긴 JsonObject 객체 파싱해 특정 idx (순서) 로 정렬 실시 본문

JavaScript

64. (javascript/자바스크립트) JsonArray 에 담긴 JsonObject 객체 파싱해 특정 idx (순서) 로 정렬 실시

투케이2K 2021. 6. 16. 10:40

/* =========================== */

[ 개발 환경 설정 ]

개발 툴 : Edit++

개발 언어 : javascript

/* =========================== */

/* =========================== */

[소스 코드]

 

    <script>
    	/* 
    	[요약 설명]
    	1. JSON.stringify : 인수로 전달받은 자바스크립트 객체를 문자열로 변환하여 반환합니다    	
    	2. JSON.parse : 인수로 전달받은 문자열을 자바스크립트 객체로 변환하여 반환합니다   
    	3. 로직 : JsonArray에 담긴 JsonObject 객체에서 idx 값을 비교해 순차적으로 정렬합니다
    	*/
    	
    	
    	function main(){
    		console.log("");
    		console.log("[main] : [start]");    		
    		console.log("");
    		
    		
    		//임시 데이터 생성 실시
    		var One_Object = {idx : 2, name : "투케이"};
    		var Two_Object = {idx : 1, name : "케이투"};
    		var Three_Object = {idx : 3, name : "twok"};
    		var Four_Object = {idx : 5, name : "k2"};
    		var Five_Object = {idx : 4, name : "홍길동"};
    		
    		var Json_Array = [One_Object, Two_Object, Three_Object, Four_Object, Five_Object];
    		console.log("");
    		console.log("[beafore] : [Json_Array] : " + JSON.stringify(Json_Array));    		
    		console.log("");
    		
    		
    		//데이터 재정렬 수행 실시
    		var Json_Array_Format = JSON.parse(JSON.stringify(Json_Array));
    		
    		for(var i=0; i<Json_Array_Format.length; i++){
    			for(var k=0; k<Json_Array_Format.length; k++){
    				if((k+1) < Json_Array_Format.length) {
    					var nowData = JSON.parse(JSON.stringify(Json_Array_Format[k])); //현재 데이터를 임시로 저장
    					var nextData = JSON.parse(JSON.stringify(Json_Array_Format[k+1])); //다음 데이터를 임시로 저장
    					
    					//인덱스 순번 비교
        				var nowIdx = nowData.idx;
        				var nextIdx = nextData.idx;
        				
        				//데이터 교체 실시
        				if(nowIdx > nextIdx){ //현재 인덱스가 다음 인덱스 보다 큰경우 데이터 교체
        					Json_Array_Format[k+1] = nowData;
        					Json_Array_Format[k] = nextData;    				
        				}
    					
    				}    				    				
    			}    			   		
    		}
    		
    		console.log("");
    		console.log("[after] : [Json_Array] : " + JSON.stringify(Json_Array_Format));    		
    		console.log("");
    		
    	};
    	
    </script>

/* =========================== */

/* =========================== */

[결과 출력]

/* =========================== */

/* =========================== */

[요약 설명]

/*

[요약 설명]

1. JSON.stringify : 인수로 전달받은 자바스크립트 객체를 문자열로 변환하여 반환합니다

2. JSON.parse : 인수로 전달받은 문자열을 자바스크립트 객체로 변환하여 반환합니다

3. 로직 : JsonArray에 담긴 JsonObject 객체에서 idx 값을 비교해 순차적으로 정렬합니다

*/

/* =========================== */

 

반응형
Comments