Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 10-05-2005, 14:33   #1 (permalink)
rib
Neuer User
 
Registriert seit: Oct 2003
Beiträge: 215
2 allgemeine Fragen zur Funktionsdefinierung

1. mir ist aufgefallen das wenn ich eine Funktion auf diese weise definiere:
ActionScript:
  1. _root.einefunktion=function(){}
diese funktion immer vor dem funktionsaufruf im AS stehen muss sonst wird diese nicht ausgeführt, ist ja auch nachvollziehbar.
Allerdings wenn ich eine funktion so definiere:
ActionScript:
  1. function einefunktion(){}
ist es egal wo die funktion liegt ob vor oder nach aufruf sie wird immer aufgerufen.
DIE FRAGE: waum ist das so?

2.wie kann ich mit dieser schreibweise:
ActionScript:
  1. function einefunktion(){}
die funktion gezielt an einer bestimmten stelle definieren wie die "siehe oben"

danke
rib ist offline   Mit Zitat antworten
Alt 10-05-2005, 14:37   #2 (permalink)
mod_rewrite
 
Benutzerbild von sonar
 
Registriert seit: Feb 2003
Ort: München
Beiträge: 15.621
Im ersten Fall speicherst du eine anonyme Funktion in einer Variable.
Die is dann natürlich vor ihrer "Bestückung" mit der Funktion undefined.
Somit kannst die Funktion (bzw. den Zeiger auf den Rückgabewert der Funktion) erst aufrufen, wenn sie in der Var drinsteht.

Im zweiten Fall isses eine benannte Funktion.
Die kann - wie du selber feststellst - auch irgendwo ganz unten deklariert, aber schon ganz oben aufgerufen werden.

Warum letzteres so ist...? Liegt wohl an der Code-Abarbeitung von Flash...

Und zu deiner anderen Frage: es ist doch egal, wann und wo du die Funktion deklarierst - wichtig is doch, wann sie aufgerufen wird, oder..?
__________________
RTFM
Wie man Fragen richtig stellt.

Achim Bindannmalweg

Money makes the world go round, fear makes it turn much faster.
(New Model Army)
sonar 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 19:43 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele