peterS.: Array sortieren

Beitrag lesen

gruss Klaus,

... Sieht ungefähr so aus:

Entry = new Array();

function Element(Feld1,Feld2,Feld3) {
// Eigenschaften
   this.Feld1 = Feld1;
   this.Feld2 = Feld2;
   this.Feld3 = Feld3;
}

Entry[0] = new Element('20.28','M20x1,5','42');

Entry[1] = new Element(...);
   Entry[2] = ...;

So und jetzt nach Feld1 sortieren, wie geht das?

danke.
Gruss
Klaus

Wie sortiert man ein Array, das aus Array besteht? ...

... aber nur weil Deine "Element"-objekte auch als assoziative arrays durchgehen;

var sortKey = "Feld1"; // bzw. "Feld2" oder "Feld3";
    var sorting = "descending"; // bzw. "ascending"
    // oder man sortiert innerhalb der funktion "tableSort" in eine bevorzugte richtung und
    // bedient sich bei bedarf nach "Array.sort(sortFunction)" der methode "Array.reverse()";

function tableSort(a,b) {
        var valueA = a[sortKey];
        var valueB = b[sortKey];
        // standardmaessig: alphabetische sortierung //
        return ((sorting == "descending") ? ((valueA > valueB) ? (-1) : ((valueA < valueB) ? (1) : (0))) : ((valueA < valueB) ? (-1) : ((valueA > valueB) ? (1) : (0))));
        // oder auch:
        // return ((sorting == "descending") ? (valueB - valueA) : (valueA - valueB));
        //
        // oder andere selbstdefinierte vergleichskriterien wobei darauf zu achten ist, dass
        // ein vergleich negative oder positive numerische werte bzw. 0 zurueckgeben muss;
    }
    Entry.sort(tableSort);

by(t)e by(t)e - peterS. - pseliger@gmx.net

--
sh:| fo:) ch:? rl:| br:& n3:} n4:# ie:| mo:{ va:| de:[ zu:] fl:) ss:) ls:& js:)