Mod31算法的javascript实现
2016-01-30 02:39
603 查看
Mod31算法用于国标GB32100-2015 《法人和其他组织统一社会信用代码编码规则》的代码的验证。具体如”三证合一“后的营业执照上代码的验证。
Mod31算法Javascript实现:
验证示例:
Mod31算法Javascript实现:
function mod31(sCode){ var w = [1, 3, 9, 27, 19, 26, 16, 17, 20, 29, 25, 13, 8, 24, 10, 30, 28]; var c = '0123456789ABCDEFGHJKLMNPQRTUWXY'; var sum = 0; for (var i = 0; i < 17; i++){ sum += c.indexOf(sCode.charAt(i)) * w[i]; } var r = 31 - (sum % 31); if(r == 31) c18 = '0'; else c18 = c.charAt(r); return c18; }
验证示例:
// 参数:待验证的代码 // 返回:验证成功返回true,否则返回false function validate(sCode){ if(! /^[\dABCDEFGHJKLMNPQRTUWXY]{2}\d{6}[\dABCDEFGHJKLMNPQRTUWXY]{10}$/.test(sCode)) return false; return sCode.charAt(17) == mod31(sCode); } alert(validate('91350100M000100Y43'));
相关文章推荐
- ajax.js
- JavaScript的第一次小结
- 深入分析Javascript事件代理
- 实现高性能JavaScript之执行与加载
- JavaScript中的this机制
- JS排序方法(sort,bubble,select,insert)代码汇总
- JavaScript基础—插曲02
- JavaScript基础—插曲
- JavaScript基础—dom,事件
- JavaScript基础—闭包,事件
- JS的跳转
- JavaScript基础插曲—获取标签,插入元素,操作样式
- JavaScript
- js中的prototype和__proto__
- 旧知识的巩固,js多维数组的for定义,js自定义键值数组的定义
- 加入JavaScript 定时器开发俄罗斯方块模式的2048项目
- 双色球、大乐透、3D精选版!祝君好运(Javascript)
- js图片跑马灯效果
- JSP(三)JSTL表达式
- JavaScript世界的一等公民 - 函数