UNPKG

br-validations

Version:

A library of validations applicable to several Brazilian data like I.E., CNPJ, CPF and others

20 lines (17 loc) 491 B
var CPF = {}; CPF.validate = function(cpf) { cpf = cpf.replace(/[^\d]+/g,''); var r = /^(0{11}|1{11}|2{11}|3{11}|4{11}|5{11}|6{11}|7{11}|8{11}|9{11})$/; if (!cpf || cpf.length !== 11 || r.test(cpf)) { return false; } function validateDigit(digit) { var add = 0; var init = digit - 9; for (var i = 0; i < 9; i ++) { add += parseInt(cpf.charAt(i + init)) * (i+1); } return (add%11)%10 === parseInt(cpf.charAt(digit)); } return validateDigit(9) && validateDigit(10); };