15.10.2012 Views

Actionscript 3 Entwicklerhandbuch

Actionscript 3 Entwicklerhandbuch

Actionscript 3 Entwicklerhandbuch

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

ACTIONSCRIPT 3.0 ENTWICKLERHANDBUCH<br />

Verwenden von Arrays<br />

var names:Array = new Array("John Q. Smith", "Jane Doe", "Mike Jones");<br />

function orderLastName(a, b):int<br />

{<br />

var lastName:RegExp = /\b\S+$/;<br />

var name1 = a.match(lastName);<br />

var name2 = b.match(lastName);<br />

if (name1 < name2)<br />

{<br />

return -1;<br />

}<br />

else if (name1 > name2)<br />

{<br />

return 1;<br />

}<br />

else<br />

{<br />

return 0;<br />

}<br />

}<br />

trace(names); // output: John Q. Smith,Jane Doe,Mike Jones<br />

names.sort(orderLastName);<br />

trace(names); // output: Jane Doe,Mike Jones,John Q. Smith<br />

Bei der benutzerdefinierten Sortierfunktion orderLastName() wird mithilfe eines regulären Ausdrucks der<br />

Nachname jedes Elements extrahiert und für den Vergleichsvorgang verwendet. Der Funktionsbezeichner<br />

orderLastName wird als einziger Parameter beim Aufrufen der sort()-Methode für das names-Array verwendet. Für<br />

die Sortierfunktion werden zwei Parameter (a und b) angegeben, da die Funktion auf zwei Array-Elemente gleichzeitig<br />

angewendet wird. Der Rückgabewert der Sortierfunktion gibt die Sortierreihenfolge der Elemente an.<br />

Der Rückgabewert -1 gibt an, dass der erste Parameter a vor dem zweiten Parameter b steht.<br />

Der Rückgabewert 1 gibt an, dass der zweite Parameter b vor dem ersten Parameter a steht.<br />

Der Rückgabewert 0 gibt an, dass die Sortierrangfolge der Elemente gleichwertig ist.<br />

Die sortOn()-Methode (nur Array-Klasse)<br />

Die sortOn()-Methode wird bei Array-Objekten mit Elementen eingesetzt, die Objekte enthalten. Diese Objekte<br />

müssen über mindestens eine gemeinsame Eigenschaft verfügen, die als Sortierschlüssel verwendet werden kann. Die<br />

Verwendung der sortOn()-Methode bei Arrays mit anderen Datentypen führt zu unerwarteten Ergebnissen.<br />

Hinweis: Die Vector-Klasse enthält keine sortOn()-Methode. Diese Methode ist nur für Array-Objekte verfügbar.<br />

Im folgenden Beispiel wird das poets-Array so geändert, dass jedes Element ein Objekt und kein String ist. Jedes<br />

Objekt enthält den Nachnamen und das Geburtsjahr eines Dichters.<br />

var poets:Array = new Array();<br />

poets.push({name:"Angelou", born:"1928"});<br />

poets.push({name:"Blake", born:"1757"});<br />

poets.push({name:"cummings", born:"1894"});<br />

poets.push({name:"Dante", born:"1265"});<br />

poets.push({name:"Wang", born:"701"});<br />

Letzte Aktualisierung 27.6.2012<br />

36

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!