Grad' beim Aufräumen drauf gestoßen. Der Code ist in keinster Weise vorbildlich, ich würde das eher unter Machbarkeits-Experiment verbuchen
<html>
<div id="overDiv" style="position:absolute; visibility:hidden; z-index:1000;"></div>
<script language="JavaScript" src="overlib.js"><!-- overLIB (c) Erik Bosrup --></script>
<script language="JavaScript">
<!--
function intToStr(arg_zahl){
function kToStr(arg_zahl){
var zahl = arg_zahl;
if(zahl.substr(0,1)=='0'){zahl= zahl.substr(1,zahl.length);}
if(zahl.substr(0,1)=='0'){zahl= zahl.substr(1,zahl.length);}
if(zahl.substr(0,1)=='0'){zahl= zahl.substr(1,zahl.length);}
var final = "";
function sonderzahlen(sonder){
sonder = parseInt(sonder);
if(sonder == 10)return "zehn";
if(sonder == 11)return "elf";
if(sonder == 12)return "zwölf";
if(sonder == 13)return "dreizehn";
if(sonder == 14)return "vierzehn";
if(sonder == 15)return "fünfzehn";
if(sonder == 16)return "sechszehn";
if(sonder == 17)return "siebzehn";
if(sonder == 18)return "achtzehn";
if(sonder == 19)return "neunzehn";
return false;}
var einzeln = Array("null","eins","zwei","drei","vier","fuenf","sechs","sieben","acht","neun");
var zehner = Array("null","zehn","zwanzig","dreißig","vierzig","fuenfzig","sechzig","siebzig","achtzig","neunzig");
if(zahl.length == 3){
if(zahl=="000")return '';
if(zahl.substr(0,1)=='1'){
final += "einhundert";
}else{
final += einzeln[zahl.substr(0,1)] + "hundert";}
if(zahl.substr(1,2)!="00"){
if(zahl.substr(1,1)!='0'){
if(((parseInt(zahl.substr(1,2)) > 19) || (parseInt(zahl.substr(1,2)) < 11)) && zahl.substr(2,1) != '0'){
einzeln[1] = "ein";
final += einzeln[parseInt(zahl.substr(2,1))] + "und" + zehner[parseInt(zahl.substr(1,1))];
}else if((parseInt(zahl.substr(1,2)) < 20) && (parseInt(zahl.substr(1,2)) > 10)){
final += sonderzahlen(zahl.substr(1,2));
}else if(zahl.substr(2,1)=='0'){
final += zehner[parseInt(zahl.substr(1,1))];
}else{
final += einzeln[parseInt(zahl.substr(2,1))];}
}else{
final += einzeln[parseInt(zahl.substr(2,1))];}}
}else if(zahl.length==2){
if(zahl=="00")return '';
if(zahl.substr(0,1)!='0'){
if(((parseInt(zahl.substr(0,2)) > 19) || (parseInt(zahl.substr(0,2)) < 11)) && zahl.substr(1,1) != '0'){
einzeln[1] = "ein";
final += einzeln[parseInt(zahl.substr(1,1))] + "und" + zehner[parseInt(zahl.substr(0,1))];
}else if((parseInt(zahl.substr(0,2)) < 20) && (parseInt(zahl.substr(0,2)) > 10)){
final += sonderzahlen(zahl.substr(0,2));
}else if(zahl.substr(1,1)=='0'){
final += zehner[parseInt(zahl.substr(0,1))];
}else{
final += einzeln[parseInt(zahl.substr(1,1))];}
}else{
final += einzeln[zahl];}
}else if(zahl.length==1){
if(zahl=='0')return '';
final += einzeln[parseInt(zahl.substr(0,1))];}
return final;}
var ff = "";
if(arg_zahl.length<4){
return kToStr(arg_zahl);
}else if(arg_zahl.length<7){
var f1 = kToStr(arg_zahl.substr(0,arg_zahl.length-3));
var f2 = kToStr(arg_zahl.substr(arg_zahl.length-3,3));
return f1 + "tausend" + f2;
}else if(arg_zahl.length<10){
var f1 = kToStr(arg_zahl.substr(0,arg_zahl.length-6));
var f2 = kToStr(arg_zahl.substr(arg_zahl.length-6,3));
var f3 = kToStr(arg_zahl.substr(arg_zahl.length-3,3));
if(f1=='eins'){ff+="einemillion";}else{ff+=f1+"millionen";}
if(f2=='eins'){ff+="eintausend";}else if(f2!=""){ff+=f2+"tausend";}
ff+=f3;
return ff;
}else if(arg_zahl.length<13){
var f1 = kToStr(arg_zahl.substr(0,arg_zahl.length-9));
var f2 = kToStr(arg_zahl.substr(arg_zahl.length-9,3));
var f3 = kToStr(arg_zahl.substr(arg_zahl.length-6,3));
var f4 = kToStr(arg_zahl.substr(arg_zahl.length-3,3));
if(f1=='eins'){ff+="einemilliarde";}else{ff+=f1+"milliarden";}
if(f2=='eins'){ff+="einemillion";}else if(f2!=""){ff+=f2+"millionen";}
if(f3=='eins'){ff+="eintausend";}else if(f3!=""){ff+=f3+"tausend";}
ff+=f4;
return ff;}
}
//-->
</script>
<body>
<center><br><br><br><br><br><br><br><br><br><br><br>
<input type="text" name="a1">
<input type="button" onClick="alert(intToStr(document.all.a1.value));" value="da button">
</body>
</html>