Get to know MDN better
Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.
Diese Funktion ist gut etabliert und funktioniert auf vielen Geräten und in vielen Browserversionen. Sie ist seit Juli 2015 browserübergreifend verfügbar.
* Einige Teile dieser Funktion werden möglicherweise unterschiedlich gut unterstützt.
Das Function-Objekt stellt Methoden für Funktionen bereit. In JavaScript ist jede Funktion tatsächlich ein Function-Objekt.
Erstellt ein neues Function-Objekt. Der direkte Aufruf des Konstruktors kann Funktionen dynamisch erstellen, leidet jedoch unter Sicherheits- und ähnlichen (aber weit weniger signifikanten) Leistungsproblemen wie eval(). Im Gegensatz zu eval() erstellt der Function-Konstruktor jedoch Funktionen, die nur im globalen Geltungsbereich ausgeführt werden.
Diese Eigenschaften sind auf Function.prototype definiert und werden von allen Function-Instanzen geteilt.
Function.prototype.argumentsRepräsentiert die an diese Funktion übergebenen Argumente. Bei strict, Pfeil-, asynchronen und Generator-Funktionen löst der Zugriff auf die arguments-Eigenschaft einen TypeError aus. Verwenden Sie stattdessen das arguments-Objekt innerhalb von Funktionsabschlüssen.
Function.prototype.callerRepräsentiert die Funktion, die diese Funktion aufgerufen hat. Bei strict, Pfeil-, asynchronen und Generator-Funktionen löst der Zugriff auf die caller-Eigenschaft einen TypeError aus.
Function.prototype.constructorDie Konstrukturfunktion, die das Instanzobjekt erstellt hat. Bei Function-Instanzen ist der Anfangswert der Function-Konstruktor.
Diese Eigenschaften sind eigene Eigenschaften jeder Function-Instanz.
displayName OptionalDer Anzeigename der Funktion.
lengthGibt die Anzahl der von der Funktion erwarteten Argumente an.
nameDer Name der Funktion.
prototypeWird verwendet, wenn die Funktion als Konstruktor mit dem new-Operator verwendet wird. Es wird das neue Prototypobjekt des Objekts.
Ruft eine Funktion mit einem gegebenen this-Wert und optionalen Argumenten auf, die als Array (oder ein Array-ähnliches Objekt) bereitgestellt werden.
Function.prototype.bind()Erstellt eine neue Funktion, die, wenn sie aufgerufen wird, ihr this-Schlüsselwort auf einen bereitgestellten Wert gesetzt hat, optional mit einer bestimmten Sequenz von Argumenten, die den beim Aufruf der neuen Funktion bereitgestellten Argumenten vorangestellt werden.
Function.prototype.call()Ruft eine Funktion mit einem gegebenen this-Wert und optionalen Argumenten auf.
Function.prototype.toString()Gibt einen String zurück, der den Quellcode der Funktion darstellt. Überschreibt die Object.prototype.toString Methode.
Function.prototype[Symbol.hasInstance]()Gibt das Standardverfahren an, um zu bestimmen, ob eine Konstrukturfunktion ein Objekt als eine ihrer Instanzen erkennt. Wird vom instanceof-Operator aufgerufen.
Funktionen, die mit dem Function-Konstruktor erstellt wurden, erstellen keine Closures zu ihren Erstellungskontexten; sie werden immer im globalen Geltungsbereich erstellt. Beim Ausführen können sie nur auf ihre eigenen lokalen Variablen und globale Variablen zugreifen, nicht auf die Variablen aus dem Geltungsbereich, in dem der Function-Konstruktor erstellt wurde. Dies unterscheidet sich von der Verwendung von eval() mit Code für einen Funktionsausdruck.
Während dieser Code in Webbrowsern funktioniert, wird f1() in Node.js einen ReferenceError erzeugen, da x nicht gefunden wird. Dies liegt daran, dass der oberste Bereich in Node nicht der globale Bereich ist und x lokal für das Modul sein wird.
| ECMAScript® 2027 Language Specification # sec-function-objects |
JavaScript aktivieren, um diese Browser-Kompatibilitätstabelle anzuzeigen.
Der Bauplan für ein besseres Internet.
Besuche die gemeinnützige Muttergesellschaft der Mozilla Corporation, die Mozilla Foundation.
Teile dieses Inhalts sind ©1998–2026 von einzelnen mozilla.org-Mitwirkenden. Inhalte sind verfügbar unter einer Creative-Commons-Lizenz.