js正则对身份证号的判断

这篇具有很好参考价值的文章主要介绍了js正则对身份证号的判断。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1.js正则判断身份证号是否正确

以下是一个简单的 JavaScript 函数,使用正则表达式来验证身份证号码的格式是否正确:

function isValidIDCard(idCard) {
  // 身份证正则表达式
  var reg = /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/;
  return reg.test(idCard);
}

上述代码仅仅是验证了身份证号码的格式是否正确,而并没有验证身份证号码本身是否合法。如果需要验证身份证号码的合法性,可以使用第三方库或者在线服务。 

console.log(isValidIDCard('110101199003072733')); // true
console.log(isValidIDCard('11010119900307273X')); // true
console.log(isValidIDCard('1101011990030727')); // false
console.log(isValidIDCard('110101199003072734')); // false

2.js使用正则判断当前身份证号是否是22岁

要判断身份证号码是否对应一个 22 岁的人,需要先获取身份证号码中的出生日期,然后计算出此人的年龄,最后与 22 进行比较。文章来源地址https://www.toymoban.com/news/detail-593688.html

function is22YearsOld(idCard) {
  // 获取身份证号码中的出生日期
  var birth = idCard.match(/^(\d{6})(\d{4})(\d{2})(\d{2})(\d{3})(\d|X)$/);
  if (birth == null) {
    // 身份证号码格式不正确,直接返回 false
    return false;
  }
  var year = birth[2];
  var month = birth[3];
  var day = birth[4];
  // 计算此人的出生日期
  var birthday = new Date(year + '-' + month + '-' + day);
  // 计算此人的年龄
  var age = new Date().getFullYear() - birthday.getFullYear();
  if (new Date().getMonth() < birthday.getMonth() ||
      (new Date().getMonth() == birthday.getMonth() && new Date().getDate() < birthday.getDate())) {
    age--;
  }
  // 判断此人的年龄是否等于 22
  return age === 22;
   
  // 判断此人年龄是否小于 22
  return age < 22;
}
console.log(is22YearsOld('110101200102151234')); // true
console.log(is22YearsOld('110101199912312345')); // false

到了这里,关于js正则对身份证号的判断的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • jQuery.js - 前端必备的Javascript库

    作者: WangMin 格言: 努力做好自己喜欢的每一件事 jQuery.js 是什么? jQuery是一个快速简洁、免费开源易用的JavaScript框架, 倡导写更少的代码,做更多的事情 。它封装JavaScript常用的功能代码,提供了一种简便的JavaScript设计模式,以及我们开发中常用到的操作DOM的API,优化HTML文

    2024年02月05日
    浏览(77)
  • js实现输入身份证号得出生日、年龄和性别

    在 JavaScript 中,你可以使用正则表达式来提取身份证号中的出生日期、年龄和性别信息。下面是一个实现此功能的例子:

    2024年02月12日
    浏览(43)
  • 上传文件附件时判断word、excel、txt等是否含有敏感词如身份证号,手机号等

    上传附件判断word、excel、txt等文档中是否含有敏感词如身份证号,手机号等,其它检测如PDF,图片(OCR)等可以自行扩展。 互联网项目中,展示的数据中不能包含个人信息等敏感信息。判断word中是否包含手机号,word正文中是否包含身份证号等敏感信息,通过正则表达式判断

    2024年03月12日
    浏览(66)
  • vue3中,form表单校验之特殊字符校验、手机号、身份证号、百分制数字 & route和router的写法 & setup的两种用法 & rules中校验之blur和change

    vue3中,form表单校验之特殊字符校验、手机号、身份证号、百分制数字 route和router的写法 setup的两种用法 rules中校验之blur和change 1、写法一 index.vue 2、写法二完整版 index.vue 2、校验文件 srcutilsvalidate.ts

    2024年02月05日
    浏览(44)
  • 身份证号码的正则表达式及验证详解(JavaScript,Regex)

    简言 在做用户实名验证时,常会用到身份证号码的正则表达式及校验方案。本文列举了两种验证方案,大家可以根据自己的项目实际情况,选择适合的方案 身份证号码说明 居民身份证号码,正确、正式的称谓应该是“公民身份号码”。根据【中华人民共和国国家标准 GB 11

    2023年04月20日
    浏览(90)
  • Web 前端常用正则校验规则

    作为 Web 前端开发,常用的正则校验规则有很多。下面是一些常见的示例: 手机号码的正则表达式可以根据不同国家和地区的手机号码格式进行调整。以下是中国大陆的手机号码正则表达式: 在这个示例中,正则表达式 ^1[3456789]d{9}$ 表示: ^ 表示匹配字符串的开头。 1 表示

    2024年02月06日
    浏览(38)
  • 前端校验:IPV4、IPV6格式正则校验。

    1、标准 IPV4 校验,示例:110.220.39.103 2、标准 IPV6 校验,示例:2001:0db8:85a3:0000:0000:8a2e:0370:7334 3、标准 IPV4/掩码 校验,示例:192.0.2.235/22 4、标准 IPV6/掩码 校验,示例:2001:db8::/32 5、标准 IPV4- IPV4 校验,示例:10.220.39.1-10.220.39.103 6、标准 IPV6- IPV6 校验,示例:2001:db8::1-2001:db

    2024年04月12日
    浏览(44)
  • 前端Vue中常用rules校验规则(轮子)如电话身份证邮箱等校验

    目录 前言 一、正则是什么? 二、造轮子 三、轮子使用实例 总结 例如:随着前端的发展,很多功能都需要在前端填写时就先校验是否填写正确,则博主写了一些校验轮子供大家使用。 正则表达式(regular expression)是一个描述字符规则的对象。可以用来检查一个字符串是否含有

    2024年02月09日
    浏览(43)
  • js正则校验特殊的不可见字符

    表单的输入框,用户可能从Excel或者其他地方直接复制粘贴,这时候提交到后端会导致获取的用户输入中包含一些特殊的不可见字符,比如tab键或者制表符等,这时需要在前端对用户输入做一些检验,检查是否存在不可见字符。 ASCII 编码中第 0~31 个字符(开头的 32 个字符)以

    2024年02月06日
    浏览(29)
  • BCSP-玄子前端开发之JavaScript+jQuery入门CH10_jQuery基础

    4.10.1 jQuery 简介 jQuery是流行的JavaScript程序库,是对JavaScript对象和函数的封装 设计思想是write less, do more [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-gx0f3UFO-1682307309412)(./assets/image-20230423230915569.png)] 4.10.2 jQuery 能做什么 访问和操作DOM元素 控制页

    2023年04月24日
    浏览(55)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包