MudGuard: Werte in dynamisch erzeugte Funktion einsetzen

Beitrag lesen

Hi,

Funktionen sind Objekte, die vom Prototyp Function abgeleitet sind. Das Instantiieren von Objekten funktioniert bekanntlich in erster Linie über das Aufrufen der Konstruktor-Funktion mit dem Schlüsselwort »new« davor.
Auch Function kann als Konstruktor-Funktion aufgerufen werden. Diese nimmt als letzten Parameter den Code des Funktionskörpers als String entgegen, die Parameter davor sind die Funktionsparameter (ebenfalls Namen als Strings). Somit kannst du Funktionen mit variablem Körper schreiben.
aLink.onclick = new Function("var ix = '" + ix + "'; alert(ix);");
aLink.onclick = new Function("e", "var ix = '" + ix + "'; alert(ix + e.type);");

Das hat für mich so einen Touch von "eval" - das gefällt mir nicht so...

(sorry für die späte Rückmeldung, bin gestern um kurz nach Fünf zu ner Grillparty aufgebrochen und grade erst zurückgekommen)

cu,
Andreas

--
Warum nennt sich Andreas hier MudGuard?
Schreinerei Waechter
Fachfragen per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.