Javascript execute object function by string names

38

Програмування Asp.net
Попередній

Наступний

Зіткнувся з проблемою: як викликати функцію об’єкта в javascrit-е маючи тільки її назва. Зрозуміло це назва формується під час виконання коду.

Є два методи:

1) Використовуємо функцію eval. Приклад:

var obj = new MyObject();
switch (nameFuction) {
case “1”:
eval(‘obj.Func1()’)
break;
case “2”:
eval(‘obj.Func2()’)
break;
default:
break;
}

Ще бачив таку реалізацію eval(“Func1”, obj)

2) Якщо у нас функція оголошена поза об’єкта:

window[“functionName”](arguments);