레이블이 sort인 게시물을 표시합니다. 모든 게시물 표시
레이블이 sort인 게시물을 표시합니다. 모든 게시물 표시

2015년 9월 21일 월요일

자바스크립 정렬코드

자바스크립 정렬코드

 splice를 이용하여 .n순으로 정렬하고 n값이 같다면, s값이 큰값을 넣는다.

    var data_score = [];
    var s = "";
    var l = 0;
//기본 데이타 배열 만들기
    for(var i = 0; i < 10; i++){
        var unit = new Object;
        l += 2;
       
        unit.s = l;
        unit.n = l;
   
        data_score[i] = unit;
// 기본데이타 출력
        var str = "stage : " + data_score[i].n + ".. score : " + data_score[i].s;
       
        console.log(str);
    }
    console.log("-------------------------");
 
// 삽입할 데이타 만들기
    var unit_score = new Object;
    unit_score.n = 7;
    unit_score.s = 100;

// 데이타 삽입하기   
    var j = data_score.length;
    if(j == 0){
        data_score[j] = unit_score;
        j++;
    }else{
        for(var k = 1; k <= j; k++){
            if( data_score[j-k].n - unit_score.n > 0){
                if(k == j){
                    data_score.splice(0,0, unit_score);
                }     
            }else if(unit_score.n - data_score[j-k].n == 0){
                if(unit_score.s > data_score[j-k].s){
                    data_score[j-k].s = unit_score.s;
                   
                    break;
                }
            }else{
                data_score.splice(j-k+1,0, unit_score);
                break;
            }
        }
   
    }
//삽입되어진 결과물 출력   
    for(var i = 0; i < data_score.length; i++){
        var str = "stage : " + data_score[i].n + ".. score : " + data_score[i].s;
       
        console.log(str);
       
    }