Como tirar o número mais repetido de um array?

Tenho o array [“C”,“B”,“A”,“B”,“B”,“B”,"C,“A”,“B”,“A”];
Preciso que retorne o caractere B

function eleicao(votos) {
var eleito;

for (var i = 0; i < votos.length; i++){

}
return eleito;
}

Basta usar um objeto que mantém a contagem de cada elemento, e a cada iteração você verifica se a contagem dele é a maior, e vai atualizando os valores do mais votado de acordo:

function eleicao(votos) {
    var cont = {}; // contador de cada um dos elementos
    var maisVotado = votos[0];
    var maiorQtdVotos = 1;
    for (var i = 0; i < votos.length; i++) {
        var voto = votos[i];
        if (!cont[voto]) { // se ainda não tem voto, marca 1
            cont[voto] = 1
        } else { // se já tem votos, incrementa 1
            cont[voto]++;
        }
        // se tem mais votos que o maior até o momento, atualiza o mais votado
        if (cont[voto] > maiorQtdVotos) {
            maisVotado = voto;
            maiorQtdVotos = cont[voto];
        }
    }
    return maisVotado;
}

var votos = ["C", "B", "A", "B", "B", "B", "C", "A", "B", "A"];
console.log(eleicao(votos)); // B

Isso funciona se só tiver um elemento mais votado. Mas em caso de empate, você teria que primeiro ver qual é o maior número de votos, e depois percorrer o contador e só mostrar os que tem aquela quantidade de votos:

function eleicao(votos) {
    var cont = {};
    for (var i = 0; i < votos.length; i++) {
        var voto = votos[i];
        if (!cont[voto]) { // se ainda não tem voto, marca 1
            cont[voto] = 1
        } else { // se já tem votos, incrementa 1
            cont[voto]++;
        }
    }

    // encontrar a maior quantidade de votos
    let max = Math.max.apply(null, Object.values(cont));

    // encontrar todos os valores que tem "max" votos
    var maisVotados = [];
    for (const n of Object.keys(cont)) {
        if (cont[n] == max)
            maisVotados.push(n);
    }
    return maisVotados;
}

var votos = ["C", "B", "A", "C", "A", "B", "C", "B"];
console.log(eleicao(votos)); // [ 'C', 'B' ]

Só que agora a função retorna um array contendo todos os mais votados (no exemplo acima, retorna ['C', 'B'], já que houve empate entre “B” e “C”).

1 curtida