본문 바로가기

카테고리 없음

javascript 중복 카운트

1)

function run() {

    var array = document.getElementById("data").value.split(",");

    var result = {};


    array.sort();

    for(var value in array) {

        var index = array[value];

        result[index] = result[index] == undefined ? 1 : result[index] += 1;

    }        

    

    var table = [];    

    for(var value in result) {

        table.push("<tr><td>" + value + "</td><td>" + result[value] + "</td></tr>");        

    }

    

    document.getElementById("output").innerHTML = "<table border='1'><tr><td>값</td><td>중복개수</td></tr>" + table.join("") + "</table>";

}


2)

var array = [5,3,4,2,3,4,5,1,2,3,3,2,1];

var result = {};


array.sort();

for(var value in array) {

    var index = array[value];

    result[index] = result[index] == undefined ? 1 : result[index] += 1;

}        


for(var value in result) {

    alert(value + "의 중복 개수 : " + result[value]);

}


3)
var arr = [2, 2, 2, 2, 2, 4, 5, 5, 5, 9];

function foo(arr) {
    var a = [], b = [], prev;
    
    arr.sort();
    for ( var i = 0; i < arr.length; i++ ) {
        if ( arr[i] !== prev ) {
            a.push(arr[i]);
            b.push(1);
        } else {
            b[b.length-1]++;
        }
        prev = arr[i];
    }
    
    return [a, b];
}

var result = foo(arr);
document.write('[' + result[0] + ']<br>[' + result[1] + ']')