Mehrere Parameter in JavaScript (Mehrere Parameter in JavaScript), Lektion, Seite 723740
https://www.purl.org/stefan_ram/pub/mehrere_parameter_pfeilausdruecke_javascript (Permalink) ist die kanonische URI dieser Seite.
Stefan Ram
JavaScript-Kurs

Mehrfache Parameter in JavaScript 

Es ist auch möglich, daß eine Funktion mehrere  Parameter haben kann. Diese werden dann durch ein Komma  getrennt angegeben. Dazu gehören dann bei der Anwendung jener Funktion auch mehrere, durch ein Komma voneinander getrennte, Argumente.

Die kommagetrennten Parameter müssen in runde Klammern eingeschlossen werden

Auswertung
( ( x, y )=> x + y )( 10, 2 )
12

Fehlt ein Argumentwert, so wird für den dazugehörigen Parameter »undefined« als Wert verwendet. Im folgenden Beispiel fehlt der zweite Argumentwert. »1 + undefined« ergibt dann »NaN«.

Auswertung
( ( x, y )=> x + y )( 10 )
NaN

Auch bei mehreren Parametern werden überzählige Argumentwerte  ausgewertet, ohne daß ihre Werte dann verwendet werden.

Auswertung
( ( x, y )=> x + y )( 10, 2, console.log( 7 ))

7

12

Wenn nur ein Parameter verwendet werden soll, so kann dieser trotzdem eingeklammert werden.

Auswertung
( ( x )=> x * x )( 5 )
25

Hier zeigen wir zum Vergleich dasselbe ohne die Klammern.

Auswertung
( x => x * x )( 5 )
25

Wenn eine Funktion aber überhaupt keine Parameter haben soll, so sind die Klammern wieder obligatorisch.

Auswertung
( ()=> 1 )()
1

Hier geben wir die Syntax von Funktionsausdrücken nun unter Berücksichtigung der bisher vorgestellten Möglichkeiten an.

Ein Funktionsausdruck
Ausdruck        .-------------------------------. 
| |
| |
| |
.-. | .------------. V .-. .--. .----------.
---.--->( ( )---'--->.--->| Bezeichner |---.--->'--->( ) )ooooooo>( => )--->| Ausdruck |--->
| '-' ^ '------------' | '-' ^ '--' '----------'
| | .-. | o
| '--------( , )<-------' o
| '-' o
| o
| .------------. o
'--------------------->| Bezeichner |oooooooooooooooooooooo
'------------'

Längen von Funktionen

Der Eintrag »length« enthält bei einer Pfeilfunktion die Anzahl ihrer Parameter.

Auswertung
( ( x, y )=> x + y ).length
2
Auswertung
( x => x + 1 ).length
1
Auswertung
( ()=> 1 ).length
0

Gleichnamige Parameter

Es ist nicht erlaubt, daß zwei Parameter einer Pfeilfunktion den gleichen Namen  haben.

Auswertung
( x, x )=> x + x
SyntaxError: duplicate argument names not allowed in this context

Übungsfragen

?   Übungsfragen

Können Sie die Werte der folgenden Ausdrücke vorhersagen?

Ausdruck
( ()=> 2 )()
Ausdruck
( x => x - 2 )( 7 )
Ausdruck
( ( x )=> x - 2 )( 7 )
Ausdruck
( ( x, y )=> x - y )( 7, 2 )
Ausdruck
( ( x, y, z )=> x - y - z )( 7, 2, 2 )
Ausdruck
( ()=> 2 ).length
Ausdruck
( x => x - 2 ).length
Ausdruck
( ( x )=> x - 2 ).length
Ausdruck
( ( x, y )=> x - y ).length
Ausdruck
( ( x, y, z )=> x - y - z ).length
Ausdruck *
( ( x, y )=> o => x + o )( 3 ).length
Ausdruck *
( x => ( o, v )=> x + o )( 3 ).length
Ausdruck *
( x => ( o, v )=> x + o )( 3 ).length
Ausdruck *
( ( x, y )=> o => x + o )( 3 ).length

Übungsaufgaben

/   Übungsaufgabe

Definieren Sie eine Funktion »hm«, die zwei Argumente akzeptiert, welche eine Zeit in Stunden und eine Zeit in Minuten angeben. Das Ergebnis soll die Summe der beiden Zeiten in Minuten sein. Die Funktion soll sich also so verhalten, wie in den beiden folgenden Beispielen zu sehen.

Auswertung
hm( 10, 2 )
602
Auswertung
hm( 2, 10 )
130

Reserveaufgaben

Reserveaufgaben dienen der Wiederholung, falls es bei der Bearbeitung von Übungsaufgaben noch Schwierigkeiten gab.

/   Reserveaufgabe

Definieren Sie eine Funktion »hms«, die drei Argumente akzeptiert, welche eine Zeit in Stunden, eine Zeit in Minuten und eine Zeit in Sekunden angeben. Das Ergebnis soll die Summe der drei Zeiten in Sekunden sein. Die Funktion soll sich also so verhalten, wie in den beiden folgenden Beispielen zu sehen.

Auswertung
hms( 10, 2, 1 )
36121

Seiteninformationen und Impressum   |   Mitteilungsformular  |   "ram@zedat.fu-berlin.de" (ohne die Anführungszeichen) ist die Netzpostadresse von Stefan Ram.   |   Eine Verbindung zur Stefan-Ram-Startseite befindet sich oben auf dieser Seite hinter dem Text "Stefan Ram".)  |   Der Urheber dieses Textes ist Stefan Ram. Alle Rechte sind vorbehalten. Diese Seite ist eine Veröffentlichung von Stefan Ram. Schlüsselwörter zu dieser Seite/relevant keywords describing this page: Stefan Ram Berlin slrprd slrprd stefanramberlin spellched stefanram723740 stefan_ram:723740 Mehrere Parameter in JavaScript Stefan Ram, Berlin, and, or, near, uni, online, slrprd, slrprdqxx, slrprddoc, slrprd723740, slrprddef723740, PbclevtugFgrsnaEnz Erklärung, Beschreibung, Info, Information, Hinweis,

Der Urheber dieses Textes ist Stefan Ram. Alle Rechte sind vorbehalten. Diese Seite ist eine Veröffentlichung von Stefan Ram.
https://www.purl.org/stefan_ram/pub/mehrere_parameter_pfeilausdruecke_javascript