18位身份证校验码算法

chaoLucky 2025年02月17日 78次浏览

18位数身份证校验位校验码获取,或校验是否为合法身份证号:


function idNumChecker(base) {
    let mutiplier = [7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2];
    if (base.length != 17) {
        return false;
    } else {
        let sum = 0;
        for (let i = 0; i < 17; i++) {
            sum += parseInt(base[i]) * mutiplier[i];
        }
        let mod = sum % 11;
        let check = ['1','0','X','9','8','7','6','5','4','3','2'];
        return check[mod];
        if (base[17] == check[mod]) {
            return true;
        } else {
            return false;
        }
    }
}