全国组织机构代码由九位数字(或大写拉丁字母)本体代码和一位数字(或大写拉丁字母)校验码组成。本体代码采用系列(即分区段)顺序编码方法。校验码按照以下公式计算:C9=11-MOD(∑Ci(i=1→8)×Wi,11)式中: MOD——代表求余函数;i——代表代码字符从左至右位置序号;Ci——代表第i位上的代码字符的值(具体代码字符见附表);C9——代表校验码;Wi——代表第i位上的加权因子,其数值见下表: 当C9的值为10时,校验码应用大写的拉丁字母X表示;当C9的值为11时校验码用0表示。
时间: 2023-11-14 13:04:26 浏览: 60
组织机构代码校验函数
5星 · 资源好评率100%
非常感谢你提供的补充信息!以下是一个更新后的 JavaScript 函数,用于验证全国组织机构代码:
```javascript
function validateOrgCode(orgCode) {
// 组织机构代码由9位数字或字母和1位校验码组成
const reg = /^[0-9A-Z]{9}$/;
if (!reg.test(orgCode)) {
return false;
}
// 校验码计算
const codeArr = orgCode.split('');
const factor = [3, 7, 9, 10, 5, 8, 4, 2];
const parity = ['1', '0', 'X', '9', '8', '7', '6', '5', '4', '3', '2'];
let sum = 0;
for (let i = 0; i < 8; i++) {
const value = codeArr[i].toUpperCase().charCodeAt(0);
const weight = factor[i];
sum += value * weight;
}
const mod = sum % 11;
const code = parity[mod];
// 校验码验证
if (code !== codeArr[8].toUpperCase()) {
return false;
}
return true;
}
```
使用方法与之前的函数相同,仍然需要注意实际使用中的修改和完善。
阅读全文