Verwirrter User 01: alphabetische Array funktioniert leider nicht wie gewollt ;'(...

Beitrag lesen

Hi! Hätte da ein kleines Problem...ich möchte gerne eine Array erstellen und würde gerne die unten angegebene Formel verwenden...jene sollte
a) eine alphabetische Reihenfolge erzeugen(die country Array sollte einfach alphabetisch gereiht werden)
b) und dafür deutsche Umlaute + ß als a,o,u und s reihen und alles klein schreiben(mit der stringComparison Funktion)
c) document.write sollte dann den Wert ausgeben...
Das Problem bei der ganzen Sache ist dass die erste Umwandlung
a = a.toLowerCase();
b = b.toLowerCase();
zwar funktioniert...jedoch die restlichen Funktionen bei der Ausgabe nicht angewandt werden...
Ausgabe bei der Formel:
Andorra,deutschland,Dänemark,frankreich,Osttimur,Vereinigte Arabische Emirate,ägypten,Österreich
Ausgabe wenn der erste Wert v. stringComparison
a = a.replace(/Ä/g,"A");
b = b.replace(/Ä/g,"A");
ist dann:
Ägypten,Andorra,Dänemark,Osttimur,Vereinigte Arabische Emirate,deutschland,frankreich,Österreich

Ich sag schon mal danke für all eure Tipps...und hoffe natürlich dass mich jemand von meiner Verzweiflung erlösen kann ;)...

Lg

<script>
function stringComparison(a, b) {
a = a.toLowerCase();
a = a.replace(/ä/g,"a");
a = a.replace(/ö/g,"o");
a = a.replace(/ü/g,"u");
a = a.replace(/ß/g,"s");

b = b.toLowerCase();  
b = b.replace(/ä/g,"a");  
b = b.replace(/ö/g,"o");  
b = b.replace(/ü/g,"u");  
b = b.replace(/ß/g,"s");  

return(a==b)?0:(a>b)?1:-1;  

}

var index = 0;
var country = new Array();
country[index++] = "Vereinigte Arabische Emirate";
country[index++] = "deutschland";
country[index++] = "frankreich";
country[index++] = "Ägypten";
country[index++] = "Österreich";
country[index++] = "Andorra";
country[index++] = "Osttimur";
country[index++] = "Dänemark";

document.write(country.sort(stringComparison)+ "<br>");

</script>