Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 04-02-2004, 19:31   #1 (permalink)
Markus Raab
 
Benutzerbild von derRaab
 
Registriert seit: Aug 2001
Ort: Berlin Friedrichshain
Beiträge: 928
Argumente 1 zu 1 weiterleiten

Hallo Leute,

ich suche nach einem Weg Argumente, die an eine Funktion übergeben wurden direkt in der gleichen Form an die nächste Funktion weiter zu leiten.

Manchmal weiß ich eben nicht, wie viele Parameter übergeben werden müssen.

Klar kann ich einen Workaround bauen um immer einen Array zu übergeben und so. Aber vielleicht gibt es einen Weg das schöner und schneller zu machen.

ActionScript:
  1. function one (){
  2.     // hier ist arguments ein Array mit Länge 2
  3.     trace("one: "+ typeof(arguments)+"   Argumente: "+arguments+"   Länge von arguments: "+arguments.length);
  4.     // wenn ich das 1 zu 1 weiter geben möchte...
  5.     two(arguments);
  6. }
  7. function two (){
  8.     // ... ist hier natürlich arguments ein Array mit Länge 1,
  9.     // in dem eben ein Array mit Länge 2 liegt. :(
  10.     trace("two: "+ typeof(arguments)+ "   Argumente: "+arguments+"   Länge von arguments: "+arguments.length);
  11. }
  12. // Aufruf der Funktion mit Übergabe von zwei Parametern
  13. one("eins","zwei");

Also ist die Frage eigentlich: Wie bekomme ich dynamisch Argumente übergeben?

Also ungefähr so:
ActionScript:
  1. function one(){
  2.     // Argumente als Array vorhanden
  3.     //
  4.     // Argumente weiterreichen je nachdem wie viele Argumente es gibt
  5.     two(arguments[0],arguments[1],arguments[2]......usw. !aber dynamisch!);
  6. }

Naja. Wird wohl nicht gehen, oder?

Mal was zum grübeln eben...

derRaab ist offline   Mit Zitat antworten
Alt 04-02-2004, 19:59   #2 (permalink)
Markus Raab
 
Benutzerbild von derRaab
 
Registriert seit: Aug 2001
Ort: Berlin Friedrichshain
Beiträge: 928
Ein Glück, dass ich mich selbst verbessern kann.



Wäre sonst peinlich.

Also:
ActionScript:
  1. function one () {
  2.     // weiter damit
  3.     two.apply (null, arguments);
  4. }
  5. function two (a, b) {
  6.     // und da sind wir
  7.     trace ("a == " + a);
  8.     trace ("b == " + b);
  9. }
  10. one ("eins", "zwei");

Schon gehts. Leichtsinnsfehler wurden mir schon in der Schule zum Verhängnis.

derRaab 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:06 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele