js_checkiban
IBAN mit JavaScript validieren
- checkIBAN.js
function checkIBAN( IBAN )
{
let mod = 0;
let letter = "";
let block = "";
IBAN = IBAN.replace(/ /g, ''); // alle Leerzeichen entfernen
part1 = IBAN.substr( 0, 4 ); // ersten 4 Zeichen
part2 = IBAN.substr( 4 ); // alle anderen Zeichen
IBAN = part2 + part1; // erster Block als letzter anfügen
for( a=65; a<=90; a++ ) // für jeden Buchstaben im Alphabet einen Schleifendurchlauf
{
letter = String.fromCharCode( a ); // Buchstabe vom ASCII-Code ermitteln
regexp = new RegExp( letter, 'g' ); // Parameter "g" = global match: find all mateches
IBAN = IBAN.replace( regexp, String( a-55 ) ); // Buchstabe gegen Zahl ersetzen
}
let Length = IBAN.length; // neue Länge des IBAN ermitteln (wurde durch 2stellige Zahlen länger)
for( i=0; i<=Length; i=i+9 ) // Hilfsmethode für die Berechnung der Prüfziffer (9er-Blöcke)
{
if( mod === 0 ) // im 1. Durchgang 9 Zeichen ziehen
{
block = IBAN.substr( i, 9 );
}
else if( mod < 10 ) // bei einstelligem Restwert die nächsten 8 Zeichen ziehen
{
block = String( mod ) + IBAN.substr( i, 8 );
i--; // Position um 1 Zeichen nach vorne verschieben
}
else // bei zweistelligem Restwert nur noch 7 Zeichen ziehen
{
block = String( mod ) + IBAN.substr( i, 7 );
i=i-2; // Position um 2 Zeichen nach vorne verschieben
}
mod = block % 97; // Restwert ermitteln
}
if( mod === 1 ) // sofern die Prüfziffer korrekt ist muss der Restwert 1 ergeben
{
return true;
}
else
{
alert( "Die IBAN ist ungültig!" );
}
return false; // wird nur erreicht, wenn Script oben nicht mit 'true' beendet wird
}
js_checkiban.txt · Zuletzt geändert: 2018/05/01 00:00 (Externe Bearbeitung)