У меня есть классоподобная структура в javascript, я пытаюсь вызвать функцию-брат, используя переданное имя функции.
Это сложно объяснить, поэтому позвольте мне показать вам пример того, что я пытаюсь выполнить.
function windowFactory(){
this.init = function(functionName,args[]){
SetTimeout(functionName(args),2000)
}
this.func1 = function(var1){
alert(var1);
}
this.func2 = function(var1, var2){
alert(var1+var2);
}
}
var win1 = new windowFactory();
win1.init("func1","hello");
var win2 = new windowFactory();
win2.init("func2","world","!");
Обратите внимание, что это только демонстрационная функция, включая синтаксические ошибки / опечатки.
Теперь у меня была эта работа с использованием страшного Eval, когда он был за пределами класса ...
eval(funcName+"('"+darray[1]+"','"+darray[2]+"')");
Просто требовалось, чтобы он был вне класса и передавал фиктивные значения для параметров