Auswertungsreihenfolge von Parametern in Funktionen
2005 June 30
Juten Tach,
es mag relativ unwichtig erscheinen, aber interessant finde ich es schon. Flash wertet Parameter in einem Funktionsaufruf von rechts nach links aus. Folgendes Beispiel:
function someFunction(prm1:Number, prm2:Number):Void {
trace(prm1 + ", " + prm2);
}
var myNumber:Number = 0;
someFunction(myNumber, ++myNumber);
resultiert in der Ausgabe:
1, 1
Warum, weil eben erst der rechte Ausdruck ausgewertet wird, was die Erhöhung von myNumber bewirkt und danach der linke, der nun die erhöhte Zahl zurückgibt.
Wieder was gelernt.
No comments yet
