集装箱编号校验码规则(JavaScript版本)
最近需要用到校验集装箱号是正确,网上搜了搜箱号的校验规则,写了份demo
贴上具体的计算方法, 参考点这里
懒的点的可以看我复制粘贴然后整理的的部分
一、箱号编码的构成
标准集装箱箱号由11位编码组成,包括三个部分:
1、第一部分由4位英文字母组成。
2、第二部分由6位数字组成。
3、第三部分为校验码(Check Digit)由前4位字母和6位数字经过校验规则运算得到,用于识别在校验时是否发生错误。即第11位数字。
二、箱号的校验规则
以CBHU3202732为例
①首先第一部分四个字母分别取它们对应的数字
A=10 B=12 C=13 D=14 E=15 F=16 G=17 H=18 I=19 J=20 K=21 L=23 M=24 N=25 O=26 P=27 Q=28 R=29 S=30 T=31 U=32 V=34 W=35 X=36 Y=37 Z=38
前四个字母分别对应,13、12、18、32
②把数字分别进行处理然后累加
处理方法 ==>> 第N位的箱号对应值乘以2^(N-1) (N=1,2,3………10
C对应13,并且是第一位,那么就是 13*2^(1-1)= 13
B对应12,是第二位,那么就是12*2^(2-1)= 24
H ==>>>> 72
U ==>>>> 256
然后到了第一个数字3 ==>>>> 3**2^(5-1)= 48<