// 统一社会信用代码checkSocialCardNumber(value) {if (value == "") {return false;} else {var firstarray = ["0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z",];var firstkeys = [3, 7, 9, 10, 5, 8, 4, 2];var secondarray = ["0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F","G","H","J","K","L","M","N","P","Q","R","T","U","W","X","Y",];var secondkeys = [1, 3, 9, 27, 19, 26, 16, 17, 20, 29, 25, 13, 8, 24, 10, 30, 28,];function calc(code, array1, array2, b) {var count = 0;for (var i = 0; i < array2.length; i++) {var a = code[i];count += array2[i] * array1.indexOf(a);}var remainder = count % b;return remainder === 0 ? 0 : b - remainder;}var code = value.toUpperCase();if (code.length != 18) {console.log(1);return false;}var reg = /^\w\w\d{6}\w{9}\w$/;if (!reg.test(code)) {console.log(2);return false;} else {/*登记管理部门代码:使用阿拉伯数字或大写英文字母表示。​机构编制:1​民政:5​工商:9​其他:Y*/let reg1 = /^[1,5,9,Y]\w\d{6}\w{9}\w$/;if (!reg1.test(code)) {console.log(3);return false;} else {/*机构类别代码:使用阿拉伯数字或大写英文字母表示。​机构编制机关:11打头​​机构编制事业单位:12打头​机构编制中央编办直接管理机构编制的群众团体:13打头​​机构编制其他:19打头​民政社会团体:51打头​民政民办非企业单位:52打头​民政基金会:53打头​村民委员会:54打头民政其他:59打头​工商企业:91打头​工商个体工商户:92打头​工商农民专业合作社:93打头​其他:Y1打头​*/let reg2 = /^(11|12|13|19|21|31|32|33|34|35|41|51|52|53|54|55|61|62|59|71|72|81|91|92|93|A1|G1|J1|N1|N2|N3|Y1)\d{6}\w{9}\w$/;if (!reg2.test(code)) {console.log(4);return false;} else {/*登记管理机关行政区划码:只能使用阿拉伯数字表示。按照GB/T 2260编码。​例如:四川省成都市本级就是510100;四川省自贡市自流井区就是510302。​*/let reg3 = /^(11|12|13|19|21|31|32|33|34|35|41|51|52|53|54|55|61|62|59|71|72|81|91|92|93|A1|G1|J1|N1|N2|N3|Y1)\d{6}\w{9}\w$/;if (!reg3.test(code)) {console.log(5);return false;} else {var firstkey = calc(code.substr(8), firstarray, firstkeys, 11);var firstword;if (firstkey < 10) {firstword = firstkey;}if (firstkey == 10) {firstword = "X";} else if (firstkey == 11) {firstword = "0";}if (firstword != code.substr(16, 1)) {console.log(6);return false;}else {var secondkey = calc(code, secondarray, secondkeys, 31);var secondword = secondarray[secondkey];if (!secondword || secondword != code.substr(17, 1)) {console.log(7);return false;}else {var word = code.substr(0, 16) + firstword + secondword;if (code != word) {console.log(8);return false;}else {console.log(9);return true}}}}}}}}},

转载于:https://blog.csdn.net/Syracuse123_?type=blog
参考链接:https://www.lmlphp.com/user/57840/article/item/2658937/
https://www.hftfund.com/contents/2019/10/10-3c400690bdb34720a22ad68e22956601.html

js中统一社会信用代码校验规则相关推荐

  1. 组织机构代码和统一社会信用代码校验规则以及java校验工具类

    组织机构代码 编码规则编辑 1.全国组织机构代码由八位数字(或大写拉丁字母)本体代码和一位数字(或大写拉丁字母)校验码组成. 本体代码采用系列(即分区段)顺序编码方法. 校验码按照以下公式计算: C9 ...

  2. Python实现统一社会信用代码校验(GB32100-2015)

    Python实现统一社会信用代码校验 统一社会信用代码国标校验 统一社会信用代码国标校验规则 示例说明 Python代码实现(仅实现GB- 32100-2015中的规则) 统一社会信用代码国标校验   ...

  3. JS实现统一社会信用代码的效验(组织机构代码效验)

    参考原文https://blog.csdn.net/hdhxby/article/details/56015370 部分错误,修改整合了下 想查询数据的,请点击:统一信用代码查询地址 查看效验规则点击 ...

  4. hive自定义函数实现组织机构代码、统一社会信用代码校验

    一.根据中华人民共和国国家标准全国组织机构代码(9位)编制规则实现规则校验 1.组织机构代码编码规则 1.1组织机构代码的组成 全国组织机构代码由八位数字(或大写拉丁字母)本体代码和一位数字(或大写拉 ...

  5. 全网唯一正确身份证和社统一社会信用代码自定义表单校验器(身份证校验和社统一社会信用代码校验)

    话不多说,直入正题: 1.工具类: import * as moment from 'moment'; import {isUndefined} from 'util'; import {Abstra ...

  6. 实现统一社会信用代码校验

    社会信用代码:由18位数字和大写的字母组成,第1位是登记管理部门代码,第2位是机构类别代码,第3~8位登记管理机关行政区划码,第9~17位主休标识码,第18位校验码.有五个部分组成. 具体详情请点击: ...

  7. 全国组织机构统一社会信用代码校验 - Java 版

    主要是网上错误的代码太多,为了避免大家踩坑,特此更正,详细规则如下: GB 32100-2015 法人和其他组织统一社会信用代码编码规则 private static final String BAS ...

  8. 身份证号码及统一社会信用代码校验

    /** * 身份证号码验证 * rule为form表单当前验证的filed对应的验证rule规则 * value为当前输入框返回值 * callback为回调函数,验证成功直接回调,验证失败回调函数返 ...

  9. JAVA 身份证校验与统一社会信用代码校验

    B话少说,上代码 原理默认大家都懂了,不懂的话可以百度一下 package com.microlinktech.rns.util;import lombok.Getter; import lombok ...

  10. (五证合一)法人和其他组织统一社会信用代码编码规则

    PDF文档下载地址:http://download.csdn.net/detail/joke01/9339301 文档里面详细写明了统一社会信用代码(俗称五证合一)的编码规则和效验码计算规则.

最新文章

  1. 他676分考上清华却没微信,看到他的手机后大家沉默了
  2. Windows下使用explorer批量下载文件
  3. asp.net三层架构连接Oracle 11g详解
  4. redis 依赖_springboot|springboot集成redis缓存
  5. .Net Core 之 Ubuntu 14.04 部署过程
  6. 构建springmvc+dubbo分布式平台-dubbo简介
  7. 时尚达人必备的潮流壁纸桌面!
  8. 《计算机网络课程设计(第2版)》——2.4节课程设计分析
  9. 售货员的难题(codevs 2596)
  10. C++11实现模板手柄:委托构造函数、defaultkeyword分析
  11. 全球及中国汽车零部件用模塑料行业盈利预测及投资前景分析报告2021年版
  12. SQL2008 视频教程 SQL Server 2008高级视频教程
  13. 使用曲面细分渲染毛发
  14. centos篇---安装mysql详细步骤
  15. Android开发学习总结(一)——搭建最新版本的Android开发环境
  16. Linux搭建maven私服
  17. 解决Type interface com.kuang.mapper.UserMapper is not known to the MapperRegistry.的问题
  18. cps评分和tps评分_【一点资讯】一文总结:PD-1/PD-L1免疫检查点抑制剂和TPS、CPS、IPS...
  19. 查看UDID的两种方式,连手机查看,不用Mac连接iPhone手机,获取UDID, iOS 设备的一个唯一识别码
  20. 离散小波变换的FPGA/Verilog实现

热门文章

  1. (转)国内外优秀的Web前端工程师
  2. 202013 启明星辰入侵防御 简单使用手册
  3. 在elementUI中sort-orders排序,默认为三种,怎么改成两种
  4. 龙芯OS看cpu频率
  5. 雨后小故事动态邪恶_当您遇到“邪恶”的问题时,使故事变小
  6. HOUR 11 Developing Advanced Pointers
  7. Java - JDBC Best Practices
  8. [LeetCode]347. 前 K 个高频元素
  9. 电脑网页端远程控制手机方法
  10. Flask开发实现在线问答系统首页功能