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 相关文章推荐
javascript中最常用的继承模式 组合继承
Aug 12 Javascript
js函数获取html中className所在的内容并去除标签
Sep 08 Javascript
深入理解JavaScript系列(31):设计模式之代理模式详解
Mar 03 Javascript
一些实用性较高的js方法
Apr 19 Javascript
Javascript动画效果(3)
Oct 11 Javascript
ReactNative实现图片上传功能的示例代码
Jul 11 Javascript
ReactNative Image组件使用详解
Aug 07 Javascript
jQuery判断网页是否已经滚动到浏览器底部的实现方法
Oct 27 jQuery
Vue自定义弹窗指令的实现代码
Aug 13 Javascript
Angular请求防抖处理第一次请求失效问题
May 17 Javascript
JS中的算法与数据结构之二叉查找树(Binary Sort Tree)实例详解
Aug 16 Javascript
Javascript模拟实现new原理解析
Mar 03 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 强制性文件下载功能的函数代码(任意文件格式)
2010/05/26 PHP
php实现图片添加水印功能
2014/02/13 PHP
PHP实现服务器状态监控的方法
2014/12/09 PHP
PHP进行批量任务处理不超时的解决方法
2016/07/11 PHP
PHP中ID设置自增后不连续的原因分析及解决办法
2016/08/21 PHP
Laravel 5.5基于内置的Auth模块实现前后台登陆详解
2017/12/21 PHP
ExtJs的Date格式字符代码
2010/12/30 Javascript
javascript算法题 求任意一个1-9位不重复的N位数在该组合中的大小排列序号
2012/07/21 Javascript
让你的博客飘雪花超出屏幕依然看得见
2013/01/04 Javascript
js自定义事件及事件交互原理概述(一)
2013/02/01 Javascript
js history对象简单实现返回和前进
2013/10/30 Javascript
基于jQuery和CSS3制作响应式水平时间轴附源码下载
2015/12/20 Javascript
浅谈JQuery+ajax+jsonp 跨域访问
2016/06/25 Javascript
微信小程序 地图定位简单实例
2016/10/14 Javascript
JavaScript中boolean类型之三种情景实例代码
2016/11/21 Javascript
详解用webpack2.0构建vue2.0超详细精简版
2017/04/05 Javascript
使用Xcache缓存器加速PHP网站的配置方法
2017/04/22 Javascript
用ES6写全屏滚动插件的示例代码
2018/05/02 Javascript
JS非行间样式获取函数的实例代码
2018/06/05 Javascript
Bootstrap实现省市区三级联动(亲测可用)
2019/07/26 Javascript
Django rest framework基本介绍与代码示例
2018/01/26 Python
在python2.7中用numpy.reshape 对图像进行切割的方法
2018/12/05 Python
Python3中的bytes和str类型详解
2019/05/02 Python
Python二维码生成识别实例详解
2019/07/16 Python
python字典排序的方法
2019/10/12 Python
浅谈Pytorch torch.optim优化器个性化的使用
2020/02/20 Python
django实现HttpResponse返回json数据为中文
2020/03/27 Python
HTML5的自定义属性data-*详细介绍和JS操作实例
2014/04/10 HTML / CSS
世界首屈一指的在线男士内衣权威:HisRoom
2017/08/05 全球购物
美国羊皮公司:Overland
2018/01/15 全球购物
校本教研工作制度
2014/01/22 职场文书
男女朋友协议书
2014/04/23 职场文书
工作疏忽检讨书500字
2014/10/26 职场文书
2014年大学宣传部工作总结
2014/12/19 职场文书
画展邀请函
2015/01/31 职场文书
销售经理助理岗位职责
2015/04/13 职场文书