UNPKG

validatecpf-cakeno

Version:
26 lines (23 loc) 672 B
function digit(array, multiplier) { const algorithm = array.reduce((result, num) => result + (num * multiplier--), 0) % 11; return algorithm < 2 ? 0 : 11 - algorithm; } function cpfValidator(string) { let arrNumber = string .toString() .replace(/\D/g, '') .split('') .map(Number); const multOne = 10; const multTwo = 11; if (arrNumber.length === 11) { let arr = arrNumber.splice(0, 9); let digitOne = digit(arr, multOne); arr.push(digitOne); let digitTwo = digit(arr, multTwo); return digitOne === arrNumber[0] && digitTwo === arrNumber[1] ? true : false; } else { return false; } } module.exports = cpfValidator;