Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 09-06-2004, 09:18   #1 (permalink)
Neuer User
 
Registriert seit: Jan 2002
Beiträge: 144
Unhappy spezielles array sortieren?

hallo zusammen,
weiß jemand wie ich folgenedes array sortiert bekomme?

array=("13_02_04","15_08_02","20_03_05","15_02_04" );

es handelt sich um ein datum. diese möchte aufsteigen sortieren.
ich bekomme es leider nur hin das die erste zahl,
sprich der tag des datums, aufsteigend sortiert wird.
es müßte aber erst nach Jahr, dann nach monat und dann nach tag sortiert werden.

bitte helft mir auf die sprünge.

danke,
die krähe
crowfield ist offline   Mit Zitat antworten
Alt 09-06-2004, 10:00   #2 (permalink)
...
 
Registriert seit: Oct 2002
Ort: Nürnberg
Beiträge: 3.611
Code:
my_array = ["13_02_04", "15_08_02", "20_03_05", "15_02_04"];
Array.prototype.sortDate = function() {
	for (var i = 0; i<this.length; i++) {
		// datum konvertieren
		var spl = this[i].split("_");
		this[i] = spl[2]+"#"+spl[1]+"#"+spl[0];
	}
	this.sort();
	for (var i = 0; i<this.length; i++) {
		// datum konvertieren
		var spl = this[i].split("#");
		this[i] = spl[2]+"_"+spl[1]+"_"+spl[0];
	}
};
my_array.sortDate();
trace(my_array);
thorben.schmitt ist offline   Mit Zitat antworten
Alt 09-06-2004, 10:23   #3 (permalink)
life is a flash
 
Registriert seit: Oct 2002
Ort: Wien
Beiträge: 172
oder du verwendest das Datum mit Format JJMMTT - also für heute 040609.

Dann einfach array.sort();
Raffraff ist offline   Mit Zitat antworten
Alt 09-06-2004, 10:26   #4 (permalink)
...
 
Registriert seit: Oct 2002
Ort: Nürnberg
Beiträge: 3.611
ist ja das gleiche, nur dass in meinem prototype das datum in die form YYMMDD gebracht wird, und dann wieder zurück
thorben.schmitt ist offline   Mit Zitat antworten
Alt 09-06-2004, 10:58   #5 (permalink)
helpQLODhelp
 
Benutzerbild von bokel
 
Registriert seit: Feb 2002
Ort: Köln
Beiträge: 8.505
Es geht auch mit eine kleinen Vergleichsmethode für Array.sort

PHP-Code:
my_array = ["13_02_04""15_08_02""20_03_05""15_02_04"];
//
sortDate = function( ab) {
    var 
a1 a.split("_").reverse().join("_");
    var 
b1 b.split("_").reverse().join("_");
    
//
    
if( a1 b1){
        return -
1;
    }
    if( 
a1 b1){
        return 
1
    
}
    return 
0;
};
//
my_array.sort(sortDate);
trace(my_array); 
mfg .r
bokel ist offline   Mit Zitat antworten
Alt 09-06-2004, 19:05   #6 (permalink)
Neuer User
 
Registriert seit: Jan 2002
Beiträge: 144
danke, danke, danke,
melde mich etwas spät,
aber das wetter is zu geil.

werde die vorschläge gleich mal testen.

danke,
die krähe
crowfield ist offline   Mit Zitat antworten
Alt 10-06-2004, 08:38   #7 (permalink)
Neuer User
 
Registriert seit: Jan 2002
Beiträge: 144
danke nochmal an alle die geantwortet haben.
beide script's funzen prima.

danke,
die krähe
crowfield ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 10:01 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele