js 第二代身份证号码的验证机制代码


Posted in Javascript onMay 12, 2011

由于响应速度极快,可以肯定不是联机校验正确性的,那也就是说第二代身份证除了大家都知道的几位表示生日和性别的规则以外,还有另外的自我校验规则。于是翻开页面源码查看,发现这段js没有被压缩,所以规则也很好懂。
就在这里给大家科普下,不知道是不是火星了,呵呵。
以下代码来自这里,版权归盛大。当然,你也可以在维基百科找到更详细的介绍和算法。

iW = new Array(7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2,1); 
iSum = 0; 
for( i=0;i<17;i++){ 
iC = v_card.charAt(i) ; 
iVal = parseInt(iC); 
iSum += iVal * iW[i]; 
} 
iJYM = iSum % 11; 
var sJYM = ''; 
if(iJYM == 0) sJYM = "1"; 
else if(iJYM == 1) sJYM = "0"; 
else if(iJYM == 2) sJYM = "x"; 
else if(iJYM == 3) sJYM = "9"; 
else if(iJYM == 4) sJYM = "8"; 
else if(iJYM == 5) sJYM = "7"; 
else if(iJYM == 6) sJYM = "6"; 
else if(iJYM == 7) sJYM = "5"; 
else if(iJYM == 8) sJYM = "4"; 
else if(iJYM == 9) sJYM = "3"; 
else if(iJYM == 10) sJYM = "2"; 
var cCheck = v_card.charAt(17).toLowerCase(); 
if( cCheck != sJYM ){ 
return false; //对不上就是假号码 
}
Javascript 相关文章推荐
jQuery 版本的文本输入框检查器Input Check
Jul 09 Javascript
js sort 二维数组排序的用法小结
Jan 24 Javascript
js中top的作用深入剖析
Mar 04 Javascript
用jQuery实现的智能隐藏、滑动效果的返回顶部代码
Mar 18 Javascript
Js操作树节点自动折叠展开的几种方法
May 05 Javascript
href下载文件根据id取url并下载
May 28 Javascript
js实现复选框的全选和取消全选效果
Jan 03 Javascript
angular2中使用第三方js库的实例
Feb 26 Javascript
在vue中,v-for的索引index在html中的使用方法
Mar 06 Javascript
微信小程序实现天气预报功能
Jul 18 Javascript
个人小程序接入支付解决方案
May 23 Javascript
让IDE识别webpack的别名alias的实现方法
May 06 Javascript
基于JQuery的动态删除Table表格的行和列的代码
May 12 #Javascript
五个jQuery图片画廊插件 推荐
May 12 #Javascript
JavaScript 继承使用分析
May 12 #Javascript
JS焦点图切换,上下翻转
May 12 #Javascript
js 中{},[]中括号,大括号使用详解
May 12 #Javascript
JS Range HTML文档/文字内容选中、库及应用介绍
May 12 #Javascript
JavaScript中的几个关键概念的理解-原型链的构建
May 12 #Javascript
You might like
[原创]php使用strpos判断字符串中数字类型子字符串出错的解决方法
2017/04/01 PHP
js自动下载文件到本地的实现代码
2013/04/28 Javascript
下拉菜单点击实现连接跳转功能的js代码
2013/05/19 Javascript
将字符串中由空格隔开的每个单词首字母大写
2014/04/06 Javascript
js实现点击添加一个input节点
2014/12/05 Javascript
JavaScript淡入淡出渐变简单实例
2015/08/06 Javascript
JS使用eval解析JSON的注意事项分析
2015/11/14 Javascript
jQuery+jsp实现省市县三级联动效果(附源码)
2015/12/03 Javascript
Vue.js创建Calendar日历效果
2016/11/03 Javascript
vuejs指令详解
2017/02/07 Javascript
vue使用vuex实现首页导航切换不同路由的方法
2019/05/08 Javascript
解决python3 urllib中urlopen报错的问题
2017/03/25 Python
python中kmeans聚类实现代码
2018/02/23 Python
使用python存储网页上的图片实例
2018/05/22 Python
matplotlib subplots 设置总图的标题方法
2018/05/25 Python
Python合并多个Excel数据的方法
2018/07/16 Python
python 中文件输入输出及os模块对文件系统的操作方法
2018/08/27 Python
使用 Python 实现简单的 switch/case 语句的方法
2018/09/17 Python
在Mac下使用python实现简单的目录树展示方法
2018/11/01 Python
详解python 中in 的 用法
2019/12/12 Python
浅谈keras的深度模型训练过程及结果记录方式
2020/01/24 Python
python实现简单颜色识别程序
2020/02/19 Python
python实现扫雷游戏
2020/03/03 Python
PyQt5连接MySQL及QMYSQL driver not loaded错误解决
2020/04/29 Python
python 窃取摄像头照片的实现示例
2021/01/08 Python
详解html5 postMessage解决跨域通信的问题
2018/08/17 HTML / CSS
Mytheresa英国官网:拥有160多个奢侈品品牌
2016/10/09 全球购物
Cecil Mode法国在线商店:女性时尚
2021/01/08 全球购物
管理信息系学生的自我评价
2014/01/11 职场文书
班主任经验交流会主持词
2014/04/01 职场文书
讲座通知范文
2015/04/23 职场文书
2015年校务公开工作总结
2015/05/26 职场文书
如何用Laravel包含你自己的帮助函数
2021/05/27 PHP
Java生成读取条形码和二维码的简单示例
2021/07/09 Java/Android
python数字类型和占位符详情
2022/03/13 Python
MySQL数据库实验之 触发器和存储过程
2022/06/21 MySQL