Кода -копия выглядит следующим образом:
функция a () {
оповещение ("развлечение a ()");
}
функция b () {
оповещение ("FUN B ()");
}
var methodname = "";
// Метод1
methodname = "a";
Метод функции1 (MethodName) {
// инициализировать это.
this.func = function () {};
пытаться{
// Здесь мы используем метод Eval для назначения метода, представленного именем метода, который мы передали в качестве объекта атрибуту func метода1.
// Если соответствующий объект MethodName не может быть найден, метод Eval сделает исключение
this.func = eval (methodname);
} catch (e) {
Alert (methodname+"() не существует!");
}
}
var c = new M (метод имени);
c.func ();
/**
* Метод2, относительно просто
*/
methodname = "b";
Метод функции2 (методнамен) {
this.func = new Function (methodname+"();");
}
var c = new M (метод имени);
пытаться{
c.func ();
} catch (e) {
Ext.msg.alert (methodname+"() не существует!");
}