infinity-forge
Version:
33 lines • 903 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.validateCPF = validateCPF;
function validateCPF(cpf) {
cpf = cpf.replace(/[^\d]+/g, '');
if (cpf.length !== 11 || /^(\d)\1+$/.test(cpf)) {
return false;
}
var sum = 0, rest;
for (var i = 1; i <= 9; i++) {
sum = sum + parseInt(cpf.substring(i - 1, i)) * (11 - i);
}
rest = (sum * 10) % 11;
if (rest == 10 || rest == 11) {
rest = 0;
}
if (rest != parseInt(cpf.substring(9, 10))) {
return false;
}
sum = 0;
for (var i = 1; i <= 10; i++) {
sum = sum + parseInt(cpf.substring(i - 1, i)) * (12 - i);
}
rest = (sum * 10) % 11;
if (rest == 10 || rest == 11) {
rest = 0;
}
if (rest != parseInt(cpf.substring(10, 11))) {
return false;
}
return true;
}
//# sourceMappingURL=validate-cpf.js.map