之前一直在思考是不是该把工作中一些问题写出来(可能是简单的问题),现在的想法是应该写出来这些简单的问题。虽然工作中可能并没有很多特别难的问题让你去解决,因为公司的招人就是根据你的能力来匹配的嘛。

简单的问题大部分都能从网上找到,比如数字校验的正则表达式、邮箱的校验、网址匹配的正则表达式等等。有时候我们遇到的问题并不是正好跟网上已有的完全一致,比如根据身份证显示出性别、出生年月、年龄的功能有不少,但是根据身份证带出籍贯的功能就不容易找到了。所以简单的问题写成博客也是有一定意义的。


籍贯的对应表:

身份证前两位 省份 序号
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]身份证号信息解析的更多相关文章

  1. Javascript 身份证号获得出生日期、获得性别、检查身份证号码

    //---------------------------------------------------------- // 功能:根据身份证号获得出生日期 // 参数:身份证号 psidno // ...

  2. javascript实现验证身份证号的有效性并提示

    javascript实现验证身份证号的有效性并提示 function nunber(allowancePersonValue){ if(allowancePersonValue=="身份证号 ...

  3. JavaScript验证身份证号

    <%@ page language="java" contentType="text/html; charset=GB18030" pageEncodin ...

  4. 身份证号校验原理及JavaScript实现

          在网站中,总有各种各样的表单,用户使用表单来向服务器发送数据,进行交互. 然而,代代相传的经验是,永远不要信任用户的输入,一定要对数据进行验证.如果使用不经验证的表单,轻则会有大量无效提交 ...

  5. {python}完成完整的温度转换程序 猜数字游戏(猜价格,猜年龄等) 解析身份证号、学号不同片段的含义

    完成完整的温度转换程序 while True: a = int(input("如果是华氏转摄氏,请按1\n,如果是摄氏转华氏,请按2\n")) if a==1: h = float ...

  6. JavaScript 正则表单验证(用户名、密码、确认密码、手机号、座机号、身份证号)

    1.关于JavaScript表单验证,如果使用双向绑定的前端js框架,会更容易的多.但是博主还是建议大家不要脱离源生js本身.因为源生js才是王道. 注意: a.代码中的错误提示可能会没有,在代码中找 ...

  7. js实现填写身份证号、手机号、准考证号等信息自动空格的效果

    咱们做网站的,用户体验那是相当重要的,比如12306抢票需要填写身份证,如果不空格,密密麻麻的给我一种很压抑的感觉,而且也不容易核对信息是否填写正确,所以我就写了一个利用Js实现填写身份证号.手机号. ...

  8. Java怎样实现解析身份证号

    身份证号解析,demo /** * 身份证号解析demo * */ public class TestArea { public static void main(String[] args) { S ...

  9. JavaScript 通过身份证号获取出生日期、年龄、性别 、籍贯

    JavaScript 通过身份证号获取出生日期.年龄.性别 .籍贯(很全) 效果图: 示例代码: //由于没有写外部JS,所以代码比较长!!! <!DOCTYPE html PUBLIC &qu ...

随机推荐

  1. Maven常用操作

    1. 修改Maven的本地仓库路径 1.1 默认会放在~/.m2/repository目录下 (“~”代表用户的目录,比如windows下一般都是C:\Documents and Settings\[ ...

  2. vux报错二

    执行npm run build后 "build": "node build/build.js",   // 输出提示信息 - 提示用户请在 http 服务下查看 ...

  3. 【BZOJ4424】Cf19E Fairy DFS树

    [BZOJ4424]Cf19E Fairy Description 给定 n 个点,m 条边的无向图,可以从图中删除一条边,问删除哪些边可以使图变成一个二分图. Input 第 1 行包含两个整数 n ...

  4. Android获取文件的MD5值

    package my.bag; import java.io.File; import java.io.FileInputStream; import java.math.BigInteger; im ...

  5. mysql 内连接原理

  6. zabbix 部署 jmx 监控tomcat

    zabbix提供了一个java gateway的应用去监控jmx(Java Management Extensions,即Java管理扩展)是一个为应用程序.设备.系统等植入管理功能的框架.JMX可以 ...

  7. 软件IT

    软件IT 周期: 攻防:攻击性板块 范畴:科技板块 业务:软件,互联网,人工智能,区块链... 行情主要因素: 主要问题:新领域,成长不确定性高 投资策略: 个股:科大讯飞,中国软件,用友网络,浪潮信 ...

  8. Only a type can be imported. classname resolves to a package的解决

    Only a type can be imported. l1.l2.MyClass resolves to a package ==========这里是解决方案=============== 把生 ...

  9. ubuntu ---QQ install/desktop/ibus reinstall

    http://www.linuxidc.com/Linux/2016-09/134923.htm ( Ubuntu 16.04安装QQ国际版图文详细教程) [ sudo apt-get install ...

  10. 程序入口函数和glibc及C++全局构造和析构

    分类: CRT Machnasim 2011-06-15 17:45 144人阅读 评论(0) 收藏 举报 c++汇编linuxlist语言编译器 1,程序入口函数和初始化 操作系统在装载可执行文件后 ...