Programmierung – Javascript
Verschachtelung von Funktionen
Vorteile ___
Neben der normalen Notation von Funktionen können Funktionen auch verschachtelt werden. Das heißt, eine Funktion wird direkt in eine andere hinein notiert. Dies hat folgende Vor- beziehungsweise Nachteile:
Die innere (verschachtelte) Funktion kann nur über die äußere aufgerufen werden und ist für
alle anderen Zugriffe unzugänglich.
Die innere Funktion kann die Variablen und Parameter der äußeren nutzen.
Die äußere Funktion kann die Variablen und Parameter der inneren Funktion nicht nutzen.
Die innere Funktion wird als (lokale) Quasi-Variable angesehen.
Beim Aufruf von verschachtelten Funktionen können die Parameter spezifisch zugeordnet werden. Dazu wird die äußere Funktion normal aufgerufen. An demAufruf wird zusätzlich eine weitere, in Klammern stehende Parameterliste notiert. Diese zweite Liste wird dann der inneren Funktion übergeben. Ein Beispiel:
function aussen(a)
{
function innen(b,c)
{
x = a + b + c;
return(x);
}
return(innen);
}
z = aussen(1)(2,3) // = 6
Ab Javascript 1.5 ist es außerdem möglich, die eingeschlossene Funktion gegen eine Bedingung zu stellen. Dazu wird diese zum Beispiel innerhalb einer if-Abfrage definiert.