LINUX.ORG.RU

Уже нашёл. Всем, кому интересно - надо вызывать через eval(func).

Вопрос закрыт.

anonymous
()
Ответ на: комментарий от anonymous

лучше window[func]() eval'ом нужно пользоваться только в тех случаях, когда без него действительно некуда

anonymous
()
Ответ на: комментарий от anonymous

Потому что, если уж надо присваивать переменной, то наверное переменная будет "меняться"

function my_func(){alert("Hello")}

function his_func(){alert("Bye!")}

var func= my_func;

func();

func = his_func;

func();

ну и да.. перед переменной желательно писать var, за глобалы нужно сразу увольнять :-)

anonymous
()

eval - как то по детски что ли.. тяжкое наследие пхп?

я бы сделал вот так (для примера даю две функции, чтоб понятно было: a() и b(), до варианта с одной думаю запросто упростишь сам):

<script>

function a() {
alert( 'function a called' );
}

function b() {
alert( 'function b called' );
}

var func;

//some code;

func = a;

func(); //покажет "function a called"

func = b;

func(); //покажет "function b called"

function call_my_param( param_to_call ) {
param_to_call();
}

call_my_param( func ); // покажет "function b called"

</script>


AndreyKl ★★★★★
()
Ответ на: комментарий от AndreyKl

не, это гон.

просто

$myfunc();

$$myfunc() - это уже шибко и в данном случае обернётся нотисом и ошибкой фатальной

AndreyKl ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.