统一社会信用代码是一组长度为18位的用于法人和其他组织身份识别的代码。在JavaScript中进行统一社会信用代码验证,可以通过正则表达式来实现。
一、基础概念
二、相关优势
三、类型(这里主要指验证类型)
四、应用场景
五、JavaScript验证示例代码
function validateCreditCode(code) {
var reg = /^[0 - 9A - Z]{18}$/;
if (!reg.test(code)) {
return false;
}
// 校验码计算相关(简化示例,实际按完整算法)
var weight = [1, 3, 9, 27, 19, 26, 16, 17, 20, 29, 25, 13, 8, 24, 10, 30, 28];
var map = { '0': 0, '1': 1, '2': 2, '3': 3, '4': 4, '5': 5, '6': 6, '7': 7, '8': 8, '9': 9, 'A': 10, 'B': 11, 'C': 12, 'D': 13, 'E': 14, 'F': 15, 'G': 16, 'H': 17, 'J': 18, 'K': 19, 'L': 20, 'M': 21, 'N': 22, 'P': 23, 'Q': 24, 'R': 25, 'T': 26, 'U': 27, 'W': 28, 'X': 29, 'Y': 30 };
var sum = 0;
for (var i = 0; i < 17; i++) {
sum += map[code[i]] * weight[i];
}
var mod = sum % 31;
var checkCode = mod === 0? '0' : (31 - mod).toString();
return code[17] === checkCode;
}
你可以使用validateCreditCode
函数来验证一个统一社会信用代码字符串是否合法,例如:
var code = "91430100MA4L16JQ9T";
console.log(validateCreditCode(code));
如果遇到验证总是失败的情况:
领取专属 10元无门槛券
手把手带您无忧上云