彩票走势图

用Javascript计算EAN-13标准条形码最后一位校验码

转帖|其它|编辑:郝浩|2011-06-14 14:33:53.000|阅读 1075 次

概述:今天一来上班看到同事群里面说起EAN-13标准条形码最后一位校验码的事,于是顺手用js写了这个算法。

# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>

  今天一来上班看到同事群里面说起EAN-13标准条形码最后一位校验码的事,于是顺手用js写了这个算法。

EAN-13标准条形码最后一位校验码的计算步骤如下:

a、从代码位置序号2开始,所有偶数位的数字代码求和。

b、将步骤a的和乘以3。

c、从代码位置序号3开始,所有奇数位的数字代码求和。

d、将步骤b与步骤c的结果相加。

e、用大于或等于步骤d所得结果且为10最小整数倍的数减去步骤d所得结果,其差即为所求校验码的值。

解释: EAN-13标准条形码代码位置从右到左序号13 12 11 10 9 8 7 6 5 4 3 2 1

作者:网帆

创建时间:2011-06-13

*/

function isBarCode(s) {

var reg = new RegExp(/^[0-9]{12}$/);

if (reg.exec(s.substring(0, 12)))

return true;

else

return false;

}

 

function CheckBarCode(s) {

if (!isBarCode(s)) {

return "验证条形码前12位出错!";

}

var a = 0;

var b = 0;

var c = 0;

var d = 0;

var e = 0;

for (var i = 1; i <= 12; i++) {

var sc = parseInt(s[i - 1]);

if (i <= 12 && i % 2 == 0) {

a += sc;

}

else if (i <= 11 && i % 2 == 1) {

b += sc;

}

}

 

c = a * 3;

d = b + c;

if (d % 10 == 0)

e = d - d;

else

e = d + (10 - d % 10) - d;

return e;

}

alert("校验码是:&quot; + CheckBarCode("693721090010X"));


标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@cahobeh.cn

文章转载自:网络转载

为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP