• 18位身份证需要验证最后一位校验位


    //18位身份证需要验证最后一位校验位

                value = value.split('');
                //∑(ai×Wi)(mod 11)
                //加权因子
                var factor = [7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2];
                //校验位
                var parity = [1, 0, 'X', 9, 8, 7, 6, 5, 4, 3, 2];
                var sum = 0;
                var ai = 0;
                var wi = 0;
                for (var i = 0; i < 17; i++) {
                    ai = value[i];
                    wi = factor[i];
                    sum += ai * wi;
                }
                var last = parity[sum % 11];
                if (parity[sum % 11] != value[17]) {
                    this.showErrMsg(sender, "无效的身份证号,请重新输入!");
                    return false;
                }

  • 相关阅读:
    iOS开发中常见错误总结(1)
    iOS开发——OC篇&纯代码退出键盘
    获取下拉框
    @RequestBody 注解
    form 表单提交
    数据库excel导出
    状态模式
    图书网上商城实现(一)
    MongoDB(一)—— 搭建环境和启动服务
    MySQL开发遇到的问题
  • 原文地址:https://www.cnblogs.com/xiaoQ0725/p/8875713.html
Copyright © 2020-2023  润新知