hi peter,
warum tust Du das, was willst Du erreichen?
ich möchte eine methode erweitern die ich nicht kenne. eine art "methode listener":
wenn die methode "blahwahnsin()"; gefeuert wird muss dies in einem script gespeichert werden.
achtung: ich haben eben KEINE eventhandler. die methode könnte ja zb. aus einem setInterval gefeuert werden.
nun meine idee war die methode einfach per string concatination zu erweitern und diese dann wieder neu zu schreiben (überschreiben mit dem neuen stück code im source....)
var method_source = con.prototype.show_1.toString();
// irgend ein regulärer ausdruck welche aus dem string "function(var1, var2)" die parameter parsed.
var args = get_method_arguments(method_source);
// methode neu schreiben mit dem method_listener() drin...
eval('con.prototype.show_1= function('+args+') {method_listener(arguments); '+method_source+' }');
function method_listener(args)
{
// hier speichern
}
dies alles geht jedoch bis jetzt nur wenn die methode show_1 per prototypeing dem constructor hinzugefügt wurde.
--> var method_source = con.prototype.show_1.toString();
nun eben die frage:
ist es möglich an den methode source zu kommen wenn sie im constructor erzeugt wurde.
thx. T.