JavaScript/Objekte/Function

Aus SELFHTML-Wiki
< JavaScript‎ | Objekte
Version vom 5. Januar 2021, 20:22 Uhr von Apsel (Diskussion | Beiträge) (Constructor: Fixing links to disambiguation pages, replaced: d.h. → d. h.)

Wechseln zu: Navigation, Suche

Über das Function-Objekt haben Sie Zugriff auf Eigenschaften einer JavaScript-Funktion. JavaScript-Funktionen werden dadurch also selbst Gegenstand von JavaScript-Anweisungen. Sinnvoll ist das Arbeiten mit dem Function-Objekt beispielsweise im Zusammenhang mit einer variablen Anzahl von Parametern in einer Funktion.

Eigenschaften:

Constructor

Alle Funktionen, egal wie sie erzeugt wurden, sind Instanzen des Function-Konstruktors (Function constructor). Sie können daher auch direkt diesen Konstruktor aufrufen, um eine weitere Instanz zu erzeugen.

Beispiel
new Function("Parametername1", "Parametername2",  , "Anweisungen")

Folgende Angaben sind möglich:

  • Parametername: Der erste, zweite, dritte und alle folgenden Parameter, bis auf den letzten, enthalten die Parameternamen der neuen Funktion – als Strings, oder eine durch Komma getrennte Liste von Bezeichnern (z. B.: "x", "derWert", oder "a,b").
  • Anweisungen: d. h. den Funktionskörper. Dabei muss es sich ebenfalls um eine Zeichenkette handeln.


Der Aufruf von new Function(...) erzeugt lediglich eine Funktion, speichert sie selbst aber noch nicht. Möchten Sie die erzeugte Funktion in einer lokalen Variable speichern, können Sie notieren:

Beispiel
var quadrat = new Function(
// Name des ersten Parameters
"zahl",
// Funktionskörper mit Anweisungen
"window.alert('Das Quadrat der Zahl ' + zahl + 'lautet: ' + (zahl * zahl);"
);
// Aufruf der erzeugten Funktion
quadrat(5);

Diese recht umständliche Notationsweise macht nur dann Sinn, wenn Sie in Ihrem JavaScript-Programm JavaScript-Code als String gespeichert haben und eine Funktion daraus machen wollen. Dies kommt freilich nur in einigen Spezialanwendungen vor.