当前位置:首页 > 日记 > 正文

jquery 校验中国身份证号码实例详解

jquery 校验中国身份证号码实例详解

jquery 校验中国身份证号码实例详解

大陆18位身份证(第二代身份证)

身份号码是一组具有特征组合码,由十七位数字本体码和一位校验码组成。

排列顺序从左至右依次为:六位数字地区码,八位数字生日码,三位数字顺序码和一位数字校验码。

校验方法:

(1)先对前17位数字的权求和

        S = Sum(Ci * Vi), i = 0, ... , 16

        Ci:表示身份证号码上第i位置的数字值

        Vi:表示第i位置上的“加权因子”

        加权因子Vi: 7 9 10 5 8 4 2 1 6 3 7 9 10 5 8 4 2

(2)计算模(固定算法)

        Y = mod(S, 11)

(3)将计算模Y与对应的校验码校验

        Y:        0 1 2 3 4 5 6 7 8 9 10 (通过Y取得对应校验码与身份证的第18位校验)

        校验码: 1 0 X 9 8 7 6 5 4 3 2

实例代码:

function check_id(value){  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(value)){      var sum = 0, idx;     for(var i = 0; i < value.length - 1; i++){       // 对前17位数字与权值乘积求和       sum += parseInt(value.substr(i, 1), 10) * arrExp[i];     }     // 计算模(固定算法)     idx = sum % 11;     // 检验第18为是否与校验码相等     return arrValid[idx] == value.substr(17, 1).toUpperCase();   }else{     return false;   } }

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

相关文章

ppt2013无法加载mathtype加载项怎

ppt2013无法加载mathtype加载项怎

无法加载,加载,解决方法,电脑软件,mathtype,  MathType是一款十分便捷的数学公式编辑器,但是安装了MathType,在打开ppt过程中可能会出现以下问题:抱歉,由于某种原因,PowerPoint无法加载D:\PROGRAM FILES \Mathtype\Office Support\32\M…

Vue实例中生命周期created和mounte

Vue实例中生命周期created和mounte

生命周期,详解,实例,区别,电脑软件,前言本文主要跟大家介绍了关于Vue实例中生命周期created和mounted区别的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。生命周期先上图什么是生命周期Vue实例有一个完整的生命周…

ppt2013如何设置幻灯片母版ppt2013

ppt2013如何设置幻灯片母版ppt2013

步骤,设置,方法,幻灯片,母版,  在使用office2013制作PPT时,设置母版可以减少工作量,那么今天小编就教你们怎么设置母版吧。希望对你有帮助!ppt2013设置幻灯片母版的步骤新建一页空白PPTppt2013设置幻灯片母版的步骤图1  在空白页添加需要…

ppt2010动画刷在哪ppt2010动画刷的

ppt2010动画刷在哪ppt2010动画刷的

动画,位置,电脑软件,strong,  在ppt2010中一个&ldquo;动画刷&rdquo;,它的功用是将PowerPoint2010当中原对象的动画照搬到目标对象上面。这样简单就可以制作出PPT动画,再用PPT转换器制作成视频。那么动画刷在哪呢?那么小面小编教告诉你ppt201…

zTree节点文字过多的处理方法

zTree节点文字过多的处理方法

节点,处理方法,文字,电脑软件,zTree,zTree setting.view.addDiyDom 方法可以实现自定义控件,指定节点显示内容。因此需要自己实现addDiyDom方法。如果树节点不显示checkbox ,处理方法为:function addDiyDom(treeId, treeNode) { var spaceWidt…

excel折线图坐标改变刻度的教程exc

excel折线图坐标改变刻度的教程exc

折线图,教程,刻度,坐标,电脑软件,  Excel中经常需要使用到改变折线图刻度的技巧,折线图坐标具体该如何改变刻度呢?下面是由小编分享的excel折线图坐标改变刻度的教程,以供大家阅读和学习。excel折线图坐标改变刻度的教程改变刻度步骤1:下面…

excel2007怎么只复制筛选部分excel

excel2007怎么只复制筛选部分excel

筛选,方法,电脑软件,strong,  很多时候我们只需要从数据表里筛选部分数据,然后用于其他表格里面,但是有时候设置不对,导致粘贴过去的时候,不仅出现了筛选部分,其他部分数据也出现了,怎么办,下面小编教你如何只复制筛选部分的方法。希望对你有帮…

简单谈谈js的数据类型

简单谈谈js的数据类型

数据类型,简单,电脑软件,js,近期做一些项目的时候发现,自己的js基础还是不够扎实,再看一遍犀牛书,加深自己的理解和印象。所以从这篇文章开始,后面都是关于原生js的一些内容。这篇文章,我们具体介绍一下js的数据类型其中一种。一、javaScript(以…

详解vue 中使用 AJAX获取数据的方

详解vue 中使用 AJAX获取数据的方

方法,获取数据,详解,电脑软件,AJAX,在VUE开发时,数据可以使用jquery和vue-resource来获取数据。在获取数据时,一定需要给一个数据初始值。看下例:<script type="text/javascript"> new Vue({ el:'#app', data:{data:""}, …

JavaScript 函数的定义-调用、注意

JavaScript 函数的定义-调用、注意

调用,函数,注意事项,定义,电脑软件,函数定义函数语句定义function(a,b){ return a+b; }表达式定义var add = function(a,b){return a+b};//函数表达式可以包含名称,这在递归时很有用 var f = function fact(x){ if(x<=1) {return 1; }else {…

excel 公式数值化的图文教程详解

excel 公式数值化的图文教程详解

图文教程,方法,数值,公式,详解,  Excel中怎么把公式给数值化呢?excel表格中遇到大量数据要整理的时候,很多人会选择运用公式来处理,这时候我们就要将公式数值化,本文介绍了excel 公式数值化的方法,希望阅读过后对你有所启发!excel 公式数值化…

浅谈Javascript事件对象

浅谈Javascript事件对象

事件对象,浅谈,电脑软件,Javascript,如果是事件处理函数绑定的函数,浏览器会默认传递一个参数,而这个参数就是事件对象。document.onclick = function() { alert(arguments.length); //1}因为arguments[0]这样使用这个参数比较麻烦,所以我们可…