[javaScript]身份证号信息解析
之前一直在思考是不是该把工作中一些问题写出来(可能是简单的问题),现在的想法是应该写出来这些简单的问题。虽然工作中可能并没有很多特别难的问题让你去解决,因为公司的招人就是根据你的能力来匹配的嘛。
简单的问题大部分都能从网上找到,比如数字校验的正则表达式、邮箱的校验、网址匹配的正则表达式等等。有时候我们遇到的问题并不是正好跟网上已有的完全一致,比如根据身份证显示出性别、出生年月、年龄的功能有不少,但是根据身份证带出籍贯的功能就不容易找到了。所以简单的问题写成博客也是有一定意义的。
籍贯的对应表:
身份证前两位 | 省份 | 序号 |
---|---|---|
11 | 北京市 | 01 |
12 | 天津市 | 02 |
13 | 河北省 | 03 |
14 | 山西 | 04 |
15 | 内蒙古 | 05 |
21 | 辽宁省 | 06 |
22 | 吉林省 | 07 |
23 | 黑龙江省 | 08 |
31 | 上海市 | 09 |
32 | 江苏省 | 10 |
33 | 浙江省 | 11 |
34 | 安徽省 | 12 |
35 | 福建省 | 13 |
36 | 江西省 | 14 |
37 | 山东省 | 15 |
41 | 河南省 | 16 |
42 | 湖北省 | 17 |
43 | 湖南省 | 18 |
44 | 广东省 | 19 |
45 | 广西壮族自治区 | 20 |
46 | 海南省 | 21 |
50 | 重庆市 | 22 |
51 | 四川省 | 23 |
52 | 贵州省 | 24 |
53 | 云南省 | 25 |
54 | 西藏自治区 | 26 |
61 | 陕西省 | 27 |
62 | 甘肃省 | 28 |
63 | 青海省 | 29 |
64 | 宁夏回族自治区 | 30 |
65 | 新疆维吾尔自治区 | 31 |
省份后面对应的序号是固定的,所以这个问题相当于把身份证号前两位转为后面的序号。实际上就是一个简单的排序问题。
function getLocation(){
//定义数组
var locations=new Array(11,12,13,14,15,21,22,23,31,32,33,34,35,36,37,41,42,43,44,45,46,50,51,52,53,54,61,62,63,64,65);
//取得身份证号前两位
tempLocation=iIdNo.substring(0,2);
//设置是否匹配的flag
var idFlag=false;
var result;
for(var i=0;i<locations.length;i++){
if(tempLocation==locations[i]){
//设置flag为true表示找到了符合的号码
idFlag=true;
if(i<9){
i="0"+(i+1);
}else{
i=(i+1);
}
result=i;
}
}
if(!idFlag){
alert("输入的身份证号码有误!");
return false;
}else return result;
}
[javaScript]身份证号信息解析的更多相关文章
- Javascript 身份证号获得出生日期、获得性别、检查身份证号码
//---------------------------------------------------------- // 功能:根据身份证号获得出生日期 // 参数:身份证号 psidno // ...
- javascript实现验证身份证号的有效性并提示
javascript实现验证身份证号的有效性并提示 function nunber(allowancePersonValue){ if(allowancePersonValue=="身份证号 ...
- JavaScript验证身份证号
<%@ page language="java" contentType="text/html; charset=GB18030" pageEncodin ...
- 身份证号校验原理及JavaScript实现
在网站中,总有各种各样的表单,用户使用表单来向服务器发送数据,进行交互. 然而,代代相传的经验是,永远不要信任用户的输入,一定要对数据进行验证.如果使用不经验证的表单,轻则会有大量无效提交 ...
- {python}完成完整的温度转换程序 猜数字游戏(猜价格,猜年龄等) 解析身份证号、学号不同片段的含义
完成完整的温度转换程序 while True: a = int(input("如果是华氏转摄氏,请按1\n,如果是摄氏转华氏,请按2\n")) if a==1: h = float ...
- JavaScript 正则表单验证(用户名、密码、确认密码、手机号、座机号、身份证号)
1.关于JavaScript表单验证,如果使用双向绑定的前端js框架,会更容易的多.但是博主还是建议大家不要脱离源生js本身.因为源生js才是王道. 注意: a.代码中的错误提示可能会没有,在代码中找 ...
- js实现填写身份证号、手机号、准考证号等信息自动空格的效果
咱们做网站的,用户体验那是相当重要的,比如12306抢票需要填写身份证,如果不空格,密密麻麻的给我一种很压抑的感觉,而且也不容易核对信息是否填写正确,所以我就写了一个利用Js实现填写身份证号.手机号. ...
- Java怎样实现解析身份证号
身份证号解析,demo /** * 身份证号解析demo * */ public class TestArea { public static void main(String[] args) { S ...
- JavaScript 通过身份证号获取出生日期、年龄、性别 、籍贯
JavaScript 通过身份证号获取出生日期.年龄.性别 .籍贯(很全) 效果图: 示例代码: //由于没有写外部JS,所以代码比较长!!! <!DOCTYPE html PUBLIC &qu ...
随机推荐
- Maven常用操作
1. 修改Maven的本地仓库路径 1.1 默认会放在~/.m2/repository目录下 (“~”代表用户的目录,比如windows下一般都是C:\Documents and Settings\[ ...
- vux报错二
执行npm run build后 "build": "node build/build.js", // 输出提示信息 - 提示用户请在 http 服务下查看 ...
- 【BZOJ4424】Cf19E Fairy DFS树
[BZOJ4424]Cf19E Fairy Description 给定 n 个点,m 条边的无向图,可以从图中删除一条边,问删除哪些边可以使图变成一个二分图. Input 第 1 行包含两个整数 n ...
- Android获取文件的MD5值
package my.bag; import java.io.File; import java.io.FileInputStream; import java.math.BigInteger; im ...
- mysql 内连接原理
- zabbix 部署 jmx 监控tomcat
zabbix提供了一个java gateway的应用去监控jmx(Java Management Extensions,即Java管理扩展)是一个为应用程序.设备.系统等植入管理功能的框架.JMX可以 ...
- 软件IT
软件IT 周期: 攻防:攻击性板块 范畴:科技板块 业务:软件,互联网,人工智能,区块链... 行情主要因素: 主要问题:新领域,成长不确定性高 投资策略: 个股:科大讯飞,中国软件,用友网络,浪潮信 ...
- Only a type can be imported. classname resolves to a package的解决
Only a type can be imported. l1.l2.MyClass resolves to a package ==========这里是解决方案=============== 把生 ...
- ubuntu ---QQ install/desktop/ibus reinstall
http://www.linuxidc.com/Linux/2016-09/134923.htm ( Ubuntu 16.04安装QQ国际版图文详细教程) [ sudo apt-get install ...
- 程序入口函数和glibc及C++全局构造和析构
分类: CRT Machnasim 2011-06-15 17:45 144人阅读 评论(0) 收藏 举报 c++汇编linuxlist语言编译器 1,程序入口函数和初始化 操作系统在装载可执行文件后 ...