altheia-async-data-validator
Version:
A very simple, fast and customizable async data validator
20 lines (19 loc) • 581 B
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
// credit => https://gist.github.com/ShirtlessKirk/2134376
exports.default = ((arr) => {
return (ccNum) => {
let len = ccNum.length;
let bit = 1;
let sum = 0;
let val;
while (len) {
len -= 1;
val = parseInt(ccNum.charAt(len), 10);
// eslint-disable-next-line no-bitwise
bit ^= 1;
sum += bit ? arr[val] : val;
}
return sum && sum % 10 === 0;
};
})([0, 2, 4, 6, 8, 1, 3, 5, 7, 9]);
;