Aktualisiert Einsprüche in den Kommentaren vonCMS, Tim Down, MooGoo unten enthalten:
Die nächste Sache zur Verfügung, was Sie nach .toString()
auf eine Funktion ruft die volle Funktionstext, wie diese zu erhalten :
function derp() { a(); b(); c(); }
alert(derp.toString()); //"function derp() { a(); b(); c(); }"
You can give it a try here, um einige Einschränkungen von sich aber bewusst:
.toString()
Die Funktion ist auf implementierungsabhängigen (Spec here Abschnitt 15.3.4.2)
- Vom spec: eine implementierungsabhängige Darstellung der Funktion zurückgegeben wird. Diese Darstellung hat die Syntax einer FunctionDeclaration. Beachten Sie insbesondere, dass die Verwendung und Platzierung von Leerzeichen, Zeilenabschlüssen und Semikola innerhalb der Repräsentationszeichenfolge implementierungsabhängig ist.
- Notiert Unterschiede in Opera Mobile, früher Safari, keine Quelle wie mein Beispiel oben angezeigt.
- Firefox gibt eine kompilierte Funktion, nach der Optimierung, zum Beispiel:
(function() { x=5; 1+2+3; }).toString()
== function() { x=5; }
Es ist möglich, eine JavaScript-Funktion, um Text zu konvertieren, und es ist auch möglich, [den Text wieder in eine Funktion umzuwandeln] (http://stackoverflow.com/questions/2573548/given-a-string-scribing-a-jazascript-function-convert-it-to-a-java Skript-Funktion). –