배열/객체 중 객체안의 속성을 기준으로 중복값

    var arrayDummy = [
        {"unum": "0000001", "uname":"choi", "ugender":"man"},
        {"unum": "0000002", "uname":"bae", "ugender":"woman"},
        {"unum": "0000003", "uname":"kim", "ugender":"man"},
        {"unum": "0000001", "uname":"pack", "ugender":"woman"},
        {"unum": "0000002", "uname":"heo", "ugender":"woman"},
        {"unum": "0000003", "uname":"nana", "ugender":"man"}
    ]
    
    function uniqueArrayFilter(_array){
        //새로운 배열 uniqueArray 생성
        var uniqueArray = [];
        var i, j, flag;
        
        for( i = 0; i < _array.length; i++){
            // uniqueArray 의 길이가 0 이면 추가. 초기값
            if( uniqueArray.length === 0){
                uniqueArray.push(_array[i]);
            }else{
                // uniqueArray 의 길이가 1 이상이면 검토시작
                
                flag = true;
                for( j = 0; j < uniqueArray.length; j++){
                    // unum 이 같으면 flag 를 false 처리하고 해당 loop 종료
                    // unum 이 다르면 패스하고 flag는 true 지속함
                    if( uniqueArray[j].unum === _array[i].unum){
                        flag = false;
                        break;
                    }
                }
                
                // loop 에서 걸러지고 flag 값이 true 이므로 
                // 중복되지않는 unum이 해당하는 행은 uniqueArray에 추가된다. 
                if(flag){
                   uniqueArray.push(_array[i]) 
                }
            }
        }
        return uniqueArray;
    }
    
    uniqueArrayFilter(arrayDummy);
    
    /*
    결과값
    [
      {"unum": "0000001", "uname":"choi", "ugender":"man"},
      {"unum": "0000002", "uname":"bae", "ugender":"woman"},
      {"unum": "0000003", "uname":"kim", "ugender":"man"}
    ]
    */

'Javascript' 카테고리의 다른 글

[Babel] 사용기(1)  (0) 2019.06.26
파일(Image) 용량을 확인하는 방법_v1  (0) 2019.06.05
[자료구조]  (0) 2019.04.25
다수의 엘리먼트에 이벤트 등록하기  (0) 2019.04.11
base64 인코딩, 디코딩하기!  (0) 2019.04.11

+ Recent posts