Je suis un newbie jscript et j'ai un problème.Erreur de précision dans JScript?
Je suis en train d'écrire un script pour valider un numéro de compte bancaire IBAN en Belgique. J'ai besoin de remplacer certaines lettres par leur position dans une chaîne de recherche et ensuite je convertis cette chaîne en un nombre pour passer le test modulo 97.
La première partie se passe bien, mais ensuite avec la conversion de chaîne en nombre, 10 est ajouté à mon numéro. Je ne sais pas ce que je fais mal.
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 mon problème, –
Merci pour ce lien! J'ai créé un port Javascript qui peut être utile: http://jsfiddle.net/nDSmZ/ – Blaise