Variable Argumente und Vorgaben in JavaScript, ActionScript und PHP

Mittwoch, 7. Mai 2008

Wer weiß, wer entwickelt, das eine der Funktionen function () ist, dass sie oder haben weniger von Input-Argumente. Es kann vorkommen, manchmal unter, um eine Funktion zu schreiben, dass bei der Eingabe Parameter, verhält es sich anders (in OO-Programmierung finden wir dieses Verhalten angegeben als Polymorphismus). Variable Parameter (varargs), die bereits zum Zeitpunkt der C eingeführt wird standardmäßig in der klassischen Darstellung der main

CODE:
  1. ; int main (int argc, char * argv []);

nicht mit der Vorgabe eines Parameters verwechselt werden, die auch jetzt vollständig unterstützt ActionScript 3.0.

Default Argumente

Zum Beispiel in PHP können Sie eine Funktion zu definieren wie folgt aus:

PHP:
  1. $a , $b = 5 ) { function bar ($ a, $ b = 5) (
  2. / / Todosomethink
  3. )

der Parameter $b ist optional, das ist, wenn nicht während des Gesprächs auf den Standardwert von 5 annehmen, übergeben.

Wie erwartet Actionscript 3.0 jetzt auch unterstützt in vollem Umfang dieses Systems:

ActionScript 3.0 eingeführt wurde die Möglichkeit, Standard-Parameter-Werte für eine Funktion zu erklären. Wenn in einem Aufruf einer Funktion mit Standard-Parameter weggelassen wird ein Parameter mit Standardwerten, verwenden Sie den Wert für diesen Parameter in der Definition der Funktion angegeben. Alle Parameter mit Standardwerten müssen am Ende der Liste der Parameter gesetzt werden. Die Werte standardmäßig zugewiesen werden Konstanten beim Kompilieren. Die Existenz eines Standardwert für einen Parameter bedeutet, dass der Parameter einen optionalen Parameter wird, während ein Parameter nicht mit einem Standardwert betrachtet ist ein erforderlicher Parameter.

Das gleiche gilt für PHP: Parameter mit einer Voreinstellung venta optional.

In ActionScript 3.0, ähnlich wie das obige Beispiel in PHP, können Sie die voreingestellte Eingabeparameter auf diese Weise dargestellt:

ActionScript
  1. a : int , b : int = 5 ) : void { function bar (a: int, b: int = 5): void (
  2. / / Todosomethink
  3. )

Auch in diesem Fall der zweite Parameter b wird automatisch freigestellt.

In JavaScript leider ist diese Funktion - noch - nicht unterstützt. Zwar gibt es einige "verschlungenen"-Techniken (siehe z. B. Standard-Argumente in JavaScript-Funktionen) zu simulieren oder das Hindernis zu umgehen, ist der Einsatz dieser Technik in Javascript sehr begrenzt.

Variable Parameter

Diese Technik, die im Gegensatz zu seinem Vorgänger, ermöglicht es Ihnen, den Inhalt zu prüfen und die Präsenz der Input-Parameter einer Funktion. Es ist offensichtlich, dass dieser Ansatz kann auch verwendet, um fehlende Parameter eingestellt werden. In PHP, zum Beispiel, haben wir drei einfachen Funktionen, die auf der Input-Parameter zu betreiben: func_num_args() func_num_args() und func_get_arg() Diese Funktionen ermöglichen es jeweils um die Anzahl der Argumente zurück, gibt ein Array mit allen Elementen der Eingabe, abzurufen ein bestimmtes Element der Eingabe. ZB

PHP:
  1. function bar () (
  2. . func_num_args ( ) ; echo 'Anzahl der übergebenen Argumente ='. func_num_args ();
  3. )

Liefert die Anzahl der Argumente für die Funktion pluto Im Beispiel unten wird jedoch als Aufgabe gesehen, kann das Verhalten basierend auf der Anzahl (und auch die Art - polimofica) seiner Parameter variieren. In diesem Fall, wenn wir nennen pluto() mit zwei oder mehr Parameter sonst nicht angezeigt.

PHP:
  1. function bar () (
  2. func_num_args ( ) > 2 ) wenn (func_num_args ()> 2)
  3. . func_get_arg ( 1 ) ; // essendo in base 0 echo 'Der zweite Parameter ist ". func_get_arg (1), / / since 0-basierten
  4. )

Damit können Sie "simulieren" ein Default-Einstellung von Parametern, aber da PHP unterstützt den nativen und noch komfortabler eingestellt, dass den obigen Ausführungen. Allerdings ist hier ein Beispiel zu klären:

PHP:
  1. function bar () (
  2. ! isset ( func_get_arg ( 1 ) ) ) { wenn (isset (func_get_arg (1))) (
  3. / / Der zweite Parameter übergeben wurde
  4. )
  5. )

oder:

PHP:
  1. function bar () (
  2. func_num_args ( ) < 2 ) { wenn (func_num_args () <2) (
  3. / / Der zweite Parameter übergeben wurde
  4. )
  5. )

In Actionscript und Javascript haben eine situzione wie:

ActionScript
  1. function bar () (
  2. 'Numero argomenti passati = ' + arguments . length ) ; trace ( "Anzahl der übergebenen Argumente = '+ Argumente. length);
  3. / / Print alle Argumente
  4. var i : uint = 0 ; i < arguments . length ; i ++ ) { for (var i: uint = 0; i <Argumente. Länge; i + +) (
  5. arguments [ i ] ) ; trace (arguments [i]);
  6. )
  7. )

in Javascript:

JavaScript:
  1. function bar () (
  2. 'Numero argomenti passati = ' + arguments. length ) ; alert ( "Anzahl der übergebenen Argumente = '+ Argumente. length);
  3. / / Print alle Argumente
  4. '' ; var o ='';
  5. var i = 0 ; i < arguments. length ; i ++ ) { for (var i = 0; i <Argumente. Länge; i + +) (
  6. i ] + ' \n ' ; o + = arguments [i] + '\ n';
  7. )
  8. o ) ; alert (o);
  9. )

Seit ECMA, Actionscript und Javascript sind sehr ähnlich, wobei sowohl ein Objekt arguments der dann verschiedene Informationen.

Verwandte Post

War dieser Artikel hilfreich?: Per nientePocoAbbastanzaMoltoMoltissimo
Loading ... Loading ...

2 Kommentare zu "Betrifft Variablen und standardmäßig in Javascript, Actionscript und PHP"

  1. getAvatar 1,0
    11. Juni 2008 in Actionscript 3.0 Variable Argumente | Undolog.com:

    [...] Post variable Argument und ist standardmäßig in JavaScript, ActionScript und PHP hatte den Einsatz von Techniken der Übergabe von Parametern und Variablen standardmäßig ausgesetzt. Fügen Sie jetzt [...]

  2. getAvatar 1,0
    05 Jan, 2009 Wordpress: wp_parse_args () | Undolog.com:

    [...] Wordpress Funktionen und ist nützlich, wenn eine Funktion mehr paramteri unterstützt. Wie im Science-und Standard-Variable in JavaScript, ActionScript und PHP ausgeführt, würde benötigt, um die Parameter in der Weise zu übertragen [...]

Leave a comment

TAG XHTML Berechtigungen: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> INSERTION CODE:
 <pre></pre>         // blocco generico [code][/code]       // blocco generico [as][/as]           // Actionscript [css][/css]         // CSS Style Sheet [html][/html]       // HTML [js][/js]           // Javascript [objc][/objc]       // Objective-C [php][/php]         // PHP [sql][/sql]         // SQL