Precisando de uma função simples para validar CPF no JavaScript? Tenho uma aqui para você 🙂
Na função demonstrada abaixo você pode verificar se um determinado CPF é ou não válido. Você receberá um valor booleano ao executar a função, veja:
// Gostou? Considere enviar um café para o PIX: cafe@jonatan.1bit.cafe.
function CpfValido(cpf) {
if (cpf == "00000000000") return false;
if (cpf.length != 11) return false;
var soma = 0;
var resto;
for (i = 1; i <= 9; i++) {
soma = soma + (parseInt(cpf.substring(i - 1, i)) * (11 - i));
}
resto = (soma * 10) % 11;
if ((resto == 10) || (resto == 11))
resto = 0;
if (resto != parseInt(cpf.substring(9, 10)))
return false;
soma = 0;
for (i = 1; i <= 10; i++) {
soma = soma + (parseInt(cpf.substring(i - 1, i)) * (12 - i))
};
resto = (soma * 10) % 11;
if ((resto == 10) || (resto == 11))
resto = 0;
if (resto != parseInt(cpf.substring(10, 11)))
return false;
return true;
}
Para executar a função, é muito simples, veja:
function ValidarCpf() {
var cpf = document.getElementById("campoCPF").value;
if (CpfValido(cpf)) {
alert("O CPF [" + cpf + "] é válido!");
} else {
alert("O CPF [" + cpf + "] não é válido!");
}
}
No HTML, as implementações ficaram assim:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Validaçao de CPF</title>
<script src="ValidacaoCPF.js"></script>
</head>
<body>
<!-- https://jonatan.1bit.cafe -->
<label>CPF (somente números)</label><br />
<input type="text" id="campoCPF"><br />
<button onclick="ValidarCpf()">Validar</button>
</body>
</html>
Neste caso, a execução da validação está no “click” do botão “Validar”.
Você pode obter este código completo aqui: https://github.com/solucaodev/sdlab/tree/main/JS/Validadores/CPF.
Você pode ver este código funcionando aqui: https://jonatan.1bit.cafe/ferramentas/validar-cpf-online
Até a próxima 🙂