Mit dieser Methode werden die Elemente eines Arrays aufsteigend sortiert. Dabei wird in der Prototype-Methode sortieren eine lokale function definiert, welche als Vergleichs-Funktion für die sort-Methode dient.
Es gibt drei Fälle die auftreten können:
1. a < b => Der Rückgabewert ist hierbei negativ, also kommt a vor b.
2. a > b => Rückgabewert ist positiv. b kommt vor a.
3. a = b => Rückgabewert ist 0. Es findet kein Austausch der Elemente statt.
/* Damit die Methode allen Arrays hinzugefügt wird, benutzen wir die prototype-Eigenschaft */
Array.prototype.sortieren = function () {
// Vergleich-Funktion für sort-Methode
function sortiereAufsteigend (a, b) {
return a - b;
}
this.sort(sortiereAufsteigend);
}
var mein_array = [2,4,1,9,5,6,3,4,123,19];
trace("Vor dem Sortieren: " + mein_array);
mein_array.sortieren();
trace("Nach dem Sortieren: " + mein_array);
Diese Methode sortiert nur dann richtig, wenn die Array Elemente ausschließlich aus Zahlen-Werten und/oder aus Groß- ODER Kleinbuchstaben sind. Da Buchstaben nach ihrer Ascii-Nummer sortiert werden, kommt ein großes Z vor ein kleines a. Dabei helfen die Methoden toUpperCase() und toLowerCase() weiter. Diese Methoden ändern temporär alle Buchstaben in Groß- bzw Kleinbuchstaben.