身份证号尾数计算器 – 在线版
之前曾经写过这个,还有SundayMouse同学写的这个,毕竟人们有需求。但是下载版本的程序毕竟不好用,所以我索性写了个JS版本的,自己可以用网友也可以直接用。
源码:
<script> function calc(str) { /* DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE Version 2, December 2004 Copyright (C) 2004 Sam Hocevar <sam@hocevar.net> Everyone is permitted to copy and distribute verbatim or modified copies of this license document, and changing it is allowed as long as the name is changed. DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. You just DO WHAT THE FUCK YOU WANT TO. */ var coeff = [7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2,1]; var suffix = ['1','0','x','9','8','7','6','5','4','3','2']; var sum = 0; for(var i=0;i<17;i++) sum += coeff[i] * parseInt(str.charCodeAt(i)-48); sum %= 11; str = str.substr(0,17) + suffix[sum]; return str; } <script> <button onclick="alert(calc(prompt('请输入待计算的身份证号(前17位)')))" >计算</button>
[…] Update: 此程序的在线版在 http://blog.cxqn.info/archives/1053 […]
非常棒啊!在上传医师资格证的过程中,远古的证书上身份证号码都不全,都缺最后一位,找到了最后一位的推算方法吓了一跳,幸好遇上编程大佬!谢谢晓奇大神!!!
用了你的脚本好多次才发现:你的注释里面写的都是啥玩意啊-_-
确实能算
楼主,求一个:未知身份证倒数第四位,已知其他17位的求解计算器
跪谢!
如果只要算一次,建议直接把倒数第四位的10种可能性都试一下,看看哪个算出来的第18位一样。需要大批量算的话再改代码。
知道前三和后三中间怎么搞
中间就是户籍,出生日期,自己推就好了
作者大大🐮
倒数四个数只知道最后一个 另外三个怎么搞
15~16位是当地的派出所代码。这个暂时不可得,不过可以用01来代替。
17位是性别代码。你找男单女双。例如:2
参考地址:
https://www.zhihu.com/question/358944000
你这种没法搞得,这种只能通过计算出来所有符合身份证号码规则的所有组合,然后去尽量的找个实名的api去一个一个试吧
雷人的注释
不会用