2006年8月28日

身份证处理函数

/////////////////////////////////////////////////////////////////////////////////// // 身份证处理函数 /////////////////////////////////////////////////////////////////////////////////// //+------------------------------------ // 根据17位身份证算出18位身份证 //------------------------------------- function CalID_17to18(sId) { var aW = new Array(1,2,4,8,5,10,9,7,3,6,1,2,4,8,5,10,9,7); var aA = new Array("1","0","X","9","8","7","6","5","4","3","2"); var aP = new Array(17); var aB = new Array(17); var i,iSum = 0; for (i=1;i<18;i++) aP[i] = sId.substr(17-i, 1); for (i=1;i<18;i++) { aB[i] = parseInt(aP[i]) * parseInt(aW[i]); iSum += aB[i]; } return sId + aA[iSum%11]; } //+------------------------------------ // 根据15位身份证算出18位身份证 //------------------------------------- function CalID_15to18(sId) { return CalID_17to18(sId.substr(0,6) + "19" + sId.substr(6)); }

1 条评论:

wyz 说...
此评论已被博客管理员删除。