/**

* 检验18位身份证号码(15位号码可以只检测生日是否正确即可)

* @author wolfchen

* @param cid 18为的身份证号码

* @return Boolean 是否合法

**/

function isCnNewID(cid){

var arrExp = [7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2];//加权因子

var arrValid = [1, 0, "X", 9, 8, 7, 6, 5, 4, 3, 2];//校验码

if(/^\d{17}\d|x$/i.test(cid)){

var sum = 0, idx;

for(var i = 0; i < cid.length - 1; i++){

// 对前17位数字与权值乘积求和

sum += parseInt(cid.substr(i, 1), 10) * arrExp[i];

}

// 计算模(固定算法)

idx = sum % 11;

// 检验第18为是否与校验码相等

return arrValid[idx] == cid.substr(17, 1).toUpperCase();

}else{

return false;

}

}

//测试

console.log(isCnNewID("370103196912154018"))

js代码判断身份证号合法性相关推荐

  1. hive自定义函数-身份证号合法性判断

    hive自定义函数-身份证号合法性判断 简要 代码 简要 身份证号合法性判断: 若为18位身份证号: 1.第18位数字,应该在身份证号最后一位校验位数字中 2.前17为数字分别乘以对应的加权因子,累加 ...

  2. 判断身份证号是否合法;验证城市区号,生日

    判断身份证号是否合法 ; 验证城市区号 , 生日 直接上代码 /*** 判断身份证号是否合法* 验证城市区号;生日* Date:2018年12月29日 * @author D2yml**/ publi ...

  3. 身份证号合法性验证、电话手机验证、邮箱验证、银行卡验证、车牌验证

    js验证: 身份证号合法性验证 电话手机验证 邮箱验证 银行卡验证 车牌验证 //身份证号合法性验证 //支持15位和18位身份证号 //支持地址编码.出生日期.校验位验证 function Iden ...

  4. python判断身份证是否合法的函数_Python开发之身份证验证库id_validator验证身份证号合法性及根据身...

    上个星期,大佬分享了一个验证身份证号合法性的库:id_validator,没空去试着用一下看看,今天有点时间,来试着用下这个库. 1.首先,要安装这个库,windows+R键运行cmd,打开命令行窗口 ...

  5. 手机号 ,邮箱,固定电话js验证,身份证号(正则表达式)

    固定电话: var myreg =/^((1[0-9]{10})|(((([0-9]{3}-)?[0-9]{8})|(([0-9]{4}-)?[0-9]{7}))(-[0-9]{1,4})?))$/; ...

  6. js实现完美身份证号有效性验证+身份证与姓名匹配

    /* 根据[中华人民共和国国家标准 GB 11643-1999]中有关公民身份号码的规定,公民身份号码是特征组合码,由十七位数字本体码和一位数字校验码组成.排列顺序从左至右依次为:六位数字地址码,八位 ...

  7. JAVA、PHP统一社会信用代码、身份证号算法解析验证

    JAVA.PHP统一社会信用代码.身份证号算法解析验证 这是给某机关单位写系统的时候要验证统一社会信用代码用的是PHP写的方法 java的话也是同理有时间我再把java代码贴出来,这就先贴PHP JA ...

  8. 身份证校验(//身份证号合法性验证 //支持15位和18位身份证号//支持地址编码、出生日期、校验位验证)

    window.checkIdNumber=(function () {var vcity = {11: "北京", 12: "天津", 13: "河北 ...

  9. JS准确判断身份证号码

    JS准确判断身份证号码 附带示意图 以及使用方法 //校验年月日专用isDate8(sDate) {if (!/^[0-9]{8}$/.test(sDate)) {return false;}var ...

最新文章

  1. 深度学习之Pytorch基础教程!
  2. 31.绿豆蛙的归宿(拓扑排序)
  3. handler原子锁_Linux的原子操作与同步机制
  4. UVA 1645 - Count(简单DP)
  5. Windows平台下GO语言编译器(GO-windows)
  6. 中科院信工所经验_保研经验分享:实力+经验+运气=保研成功
  7. 在APP中结束第三方应用程序进程,kill第三方进程的方法
  8. 【Foreign】字符串匹配 [KMP]
  9. VBScript基础
  10. Python:1004 成绩排名
  11. Nginx与网关的区别
  12. 基于JAVA EE的临床科室管理系统
  13. 【数据集划分】误用shuffle,导致训练集和测试集掺混
  14. 网络安全人员经常使用的十大网站
  15. vue 首页白屏优化
  16. Mobileye在耶路撒冷启动自动驾驶测试,挑战极限路况
  17. 用python创建的神经网络--mnist手写数字识别率达到98%
  18. C++ 内连接与外连接
  19. Vue开发实例(12)之实现动态左侧菜单导航
  20. 马化腾的焦虑和小程序的未来到底是什么?

热门文章

  1. AV1挑起的Codec之战
  2. 给Arm生态添把火,腾讯Kona JDK Arm架构优化实践
  3. Elasticsearch笔记(七):聚合查询
  4. 视频容器格式与编码格式简介
  5. Java并发编程举例Runnable, Callable, Future, FutureTask, CompletionService
  6. golang处理kill命令总结
  7. 树的高度 递归法和非递归法
  8. 你所不知道的端口号知识!
  9. javaweb----DAO模型设计
  10. leetcode 279. Perfect Squares | 279. 完全平方数(动态规划,Java)