我是一个 JScript 新手,遇到了问题。
我正在编写一个脚本来验证比利时的 IBAN 银行账户号码。我需要将一些字母替换为它们在搜索字符串中的位置,然后将此字符串转换为数字进行模 97 测试。
第一部分进展顺利,但是在将字符串转换为数字时,我的数字会加上 10。我不知道自己做错了什么。
function checkIBAN()
{
var iban = crmForm.all.fp_iban.DataValue;
if (iban != null)
{
iban = iban.substring(4) + iban.substring(0, 4);
iban = iban.toUpperCase();
var searchString = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ';
var pos;
var tmp = '';
for (x = 0; x < iban.length; x++) {
pos = searchString.search(RegExp(iban.charAt(x),'i'));
if (pos == -1)
return false;
else
tmp += pos.toString();
}
alert(tmp); // Here my value is 735320036532111490
var nr =parseInt(tmp);
alert(nr); // Now my value seems to be 735320036532111500
alert(nr % 97);
if (nr % 97 != 1)
{
alert('IBAN number is not correct !');
}
}
}