Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   closure-compiler eval() function (https://javascript.ru/forum/events/16501-closure-compiler-eval-function.html)

alexandre 11.04.2011 09:28

closure-compiler eval() function
 
Есть написанный плагин jquery, в него в одном месте берется из опций названия функций и через eval() делаются выполнимыми, впринцепе это все работает, пока не приходиться воспользоваться closure-compiler. Пользуюсь уровнем оптимизации который стоит по умолчанию как я понимаю SIMPLE_OPTIMIZATIONS. Но тем не менее он сьедает название функций, можно как то сказать не трогать их? Может както с кавычками можно исхитриться он вроде то что в кавычках толлько через строчку делает?

Kolyaj 16.04.2011 09:00

А что значит "названия функций через eval() делаются выполнимыми"?

UPD: ага, понял. Во-первых, если функции будут глобальными, они не удалятся. Во-вторых, eval плохо.

alexandre 18.04.2011 03:38

Ну допустим у меня в базе есть значение поля editCell, а в скрипте есть функция editCell() после эвала значения из базы я вызываю эту функцию спокойно. А без эвала это просто строка как я понимаю и не срабатывает.

Если плохо то как можно по другому выполнить эти значения из базы как функции, хранить в js гденить в массиве это я не хочу очень удобно в базе. Та и определённую динамику придает.

рони 18.04.2011 08:59

alexandre,
мысли в слух ...
<script type="text/javascript">
var a = "foo";
function foo() {
    alert("test")
}
b = window[a];
typeof(b)  == "function" && b();
</script>


Часовой пояс GMT +3, время: 06:37.