我是一個jscript新手,我有一個問題。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 = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';
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 !');
}
}
}
OK,THI ssolved我的問題, – 2010-12-02 09:01:41
感謝您的鏈接!我創建了一個可能很有用的Javascript端口:http://jsfiddle.net/nDSmZ/ – Blaise 2011-10-31 16:34:39