Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

[Bug] Números repetidos retorna falso.

No console sempre retorna false, mesmo com os números repetidos.

export default function ehUmCPF(campo) {
    const cpf = campo.value.replace(/\.|-/g, "");
    validaNumerosRepetidos(cpf);

    console.log(validaNumerosRepetidos(cpf));
}

function validaNumerosRepetidos(cpf) {
    const numerosRepetidos = [ ];

        for (let i = 0; i <= 9; i++) {
            const numero = `${i}`.repeat(11);
            numerosRepetidos.push(numero);
        }

        return numerosRepetidos.includes(cpf);
}
import ehUmCPF from "./valida-cpf.js";
const camposDoFormulario = document.querySelectorAll("[required]");

camposDoFormulario.forEach((campo) =>{
    campo.addEventListener("blur", () => verificaCampo(campo));
})

function verificaCampo(campo) {
    if (campo.name == "cpf" && campo.value.length >= 11) {
        ehUmCPF(campo);
    }
}
2 respostas
solução!

Olhando por cima o código tá certinho, dá um console.log(typeof(cpf)) na função q verifica os números repetidos e vê se tá chegando como String antes de retornar true ou false, se tiver dá um console.log(cpf) pra ver se o replace aconteceu. CódigoLog

Deu certo aqui, agora retornou true. Muito obrigada pela ajuda.