Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 19-09-2004, 18:26   #1 (permalink)
Waffe==Verstand
 
Benutzerbild von p-flash
 
Registriert seit: Jul 2004
Ort: Düsseldorf
Beiträge: 724
Rückgabewert der Funktion einer Var zuweisen ohne Fn abspielen lassen

Hi,

also ich möchte einer Variablen den Rückgabewert einer Funktion zuweisen.

PHP-Code:
function  func() {
    
trace(5);

    return 
"hallo";
}

var 
hallo func();

trace(hallo); 
Wenn ich den Film teste, steht im Ausgabenfenster

5
hallo

bei der zuweisung von hallo
var hallo = func();

wird die trace(5)-funktion der funktion func abgespielt.

Kann man das irgendwie vermeiden?

Danke für die Hilfe.

p-flash
p-flash ist offline   Mit Zitat antworten
Alt 19-09-2004, 18:55   #2 (permalink)
All-rounder
 
Benutzerbild von thebiz
 
Registriert seit: Mar 2004
Ort: Bayerische Rhön
Beiträge: 2.507
Hi.

Wieso willst Du das trace(5) unterbinden,
wenn Du es in der Funktion aufrufst?

Was für ein Sinn steckt dahinter?
__________________

--------------------------------
Ich klicke, ergo bin ich. (me)
--------------------------------
thebiz ist offline   Mit Zitat antworten
Alt 19-09-2004, 18:58   #3 (permalink)
on fire
 
Benutzerbild von H.Storm
 
Registriert seit: Jan 2003
Ort: Ljubljana
Beiträge: 613
function func(tracefive) {
if (tracefive) {
trace("5");
}
return "hallo";
}

var hallo = func(false);
trace(hallo);

...viel Sinn macht das allerdings nicht...

Geändert von H.Storm (19-09-2004 um 18:59 Uhr)
H.Storm ist offline   Mit Zitat antworten
Alt 19-09-2004, 19:08   #4 (permalink)
Waffe==Verstand
 
Benutzerbild von p-flash
 
Registriert seit: Jul 2004
Ort: Düsseldorf
Beiträge: 724
Ich will zB eine Funktion erstellen die Mal abgerufen wird und bestimmte Aufgaben erledigt und mal nur der Rückgabewert, welche abhängig von Parameter ist, benötigt wird.

zB

PHP-Code:
function gotoHandler (bild) {
    
gotoAndPlay(bild);
    return 
bild*2;
}

var 
bildnummer gotoHandler(5); 
Das macht zwar jetzt kein Sinn, aber ich glaube ich versteht was ich meine.

Also ich habe die Möglichkeit die Funktion abzuspielen oder von der Funktion den Rückgabewert (welcher hier eine kleine Rechnung ist) in einer Variablen zu speichern OHNE die Funktion abzuspielen.

Danke.

p-flash
p-flash ist offline   Mit Zitat antworten
Alt 19-09-2004, 19:23   #5 (permalink)
Waffe==Verstand
 
Benutzerbild von p-flash
 
Registriert seit: Jul 2004
Ort: Düsseldorf
Beiträge: 724
oder wenn ich das in einer if-Bedingung schreibe, spielt er die Funktion auch ab.

PHP-Code:
if(gotoHandler(5) == 10) {
    
trace("hallo");

Habt ihr damit keine Probleme? Ich will eigentlich nur schauen ob die Bedingung erfüllt ist, die Funktion wird trotzdem abgespielt.


p-flash
p-flash ist offline   Mit Zitat antworten
Alt 19-09-2004, 22:05   #6 (permalink)
on fire
 
Benutzerbild von H.Storm
 
Registriert seit: Jan 2003
Ort: Ljubljana
Beiträge: 613
function gotoHandler (bild) {
if (currentFrame != bild) {
gotoAndPlay(bild);
}
return bild*2;
}

var bildnummer = gotoHandler(5);
H.Storm ist offline   Mit Zitat antworten
Alt 19-09-2004, 22:32   #7 (permalink)
mod_rewrite
 
Benutzerbild von sonar
 
Registriert seit: Feb 2003
Ort: München
Beiträge: 15.621
So wird nicht der Rückgabewert der Funktion sondern eine Referenz auf die Funktion in der Var "hallo" gespeichert, das wolltest du doch glaub ich:
ActionScript:
  1. function func() {
  2.     trace(5);
  3.     return "hallo";
  4. }
  5. var hallo = func;
  6. trace(hallo); // --> [type Function]
  7.  
__________________
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
Alt 19-09-2004, 22:40   #8 (permalink)
All-rounder
 
Benutzerbild von thebiz
 
Registriert seit: Mar 2004
Ort: Bayerische Rhön
Beiträge: 2.507
Kannst Du es nicht so machen?
Ab return wird die Funktion ja abgebrochen.

ActionScript:
  1. function func(wert) {
  2.  if (wert == 1) {
  3.   return "hallo";
  4.  }
  5.  trace(5);
  6. }
  7. var hallo = func(1);
  8. trace(hallo);
__________________

--------------------------------
Ich klicke, ergo bin ich. (me)
--------------------------------
thebiz ist offline   Mit Zitat antworten
Alt 19-09-2004, 22:41   #9 (permalink)
on fire
 
Benutzerbild von H.Storm
 
Registriert seit: Jan 2003
Ort: Ljubljana
Beiträge: 613
hab ich das nicht grad geschrieben?
H.Storm ist offline   Mit Zitat antworten
Alt 20-09-2004, 07:04   #10 (permalink)
All-rounder
 
Benutzerbild von thebiz
 
Registriert seit: Mar 2004
Ort: Bayerische Rhön
Beiträge: 2.507
Nö.
__________________

--------------------------------
Ich klicke, ergo bin ich. (me)
--------------------------------
thebiz ist offline   Mit Zitat antworten
Alt 20-09-2004, 07:30   #11 (permalink)
Banned
 
Benutzerbild von projecktx
 
Registriert seit: Sep 2003
Beiträge: 2.071
du meinst du willst einmal nur den rückgabewert haben und ein anderesmal willste das die funktion ausgeführt wird

ActionScript:
  1. function gotoHandler (bild, abspielen) {
  2. if (abspielen=="nurabspielen") {
  3.  trace("Die Funktion wurde nur abgespielt und es wird zu Bild "+bild+" gesprungen");
  4.     gotoAndPlay(bild);
  5. }
  6. if (abspielen=="rückgabeundabspielen") {
  7.     gotoAndPlay(bild);
  8.     return bild*2;
  9. }
  10. if (abspielen=="nurrückgabe") {
  11.     return bild*2;
  12. }
  13.    
  14. }
  15.  
  16. gotoHandler(5, "nurabspielen"); //Nur  abspielen
  17. var bildnummer = gotoHandler(5, "nurrückgabe"); //Nur  rückgabe
  18. var bildnummer2 = gotoHandler(5, "rückgabeundabspielen"); //Rückgabe und abspielen
  19. if (bildnummer!=undefined){
  20. trace("Es wurde Nur die Rückgabe gewählt, diese ist "+bildnummer)
  21. }
  22. if (bildnummer2!=undefined){
  23. trace("Es wurde Abspielen und Rckgabe gewählt, die Rückgabe ist "+bildnummer2)
  24. }
  25.  
  26.  
  27. //in dem fall hier dürftest du natürllich alle 3 fälle getracet bekommen
  28.  

Gruss Sascha

Geändert von projecktx (20-09-2004 um 07:32 Uhr)
projecktx ist offline   Mit Zitat antworten
Alt 20-09-2004, 07:44   #12 (permalink)
on fire
 
Benutzerbild von H.Storm
 
Registriert seit: Jan 2003
Ort: Ljubljana
Beiträge: 613
Zitat:
Zitat von thebiz
Nö.
Hast Recht.
H.Storm ist offline   Mit Zitat antworten
Alt 20-09-2004, 13:36   #13 (permalink)
Waffe==Verstand
 
Benutzerbild von p-flash
 
Registriert seit: Jul 2004
Ort: Düsseldorf
Beiträge: 724
Hallo zusammen,

danke für díe Hilfe.

@sonar
Leider nein. Ich brauche den Rückgabewert und nicht die Referenz.

@thebiz
Das kommt der Sache schon näher, das Problem ist nur, dass return nur abgespielt wird, wenn der Wert eins ist. projecktx-code trifft´s.

@projecktx
Danach hab ich gesucht.

Ich hätte aber nicht gedacht, dass es nur so aufwendig geht.


Danke nochmal an alle.

p-flash
p-flash 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 03:35 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele