Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > JavaScript: Общие вопросы > Как передать функцию внутри функции


Автор: mmotor 31.7.2015, 00:48
Делаю так
Код

var f;
function go(fi){fi("1"); setTimeout('f = "'+fi+'"',1000);}
go(alert);
console.log(typeof("f"));

На выходе мне надо получить функцию f, а я получаю строку.
Подскажите, как сделать правильно

Автор: mmotor 31.7.2015, 03:08
Т.е. должно быть так, но название функции должно передаваться в параметре функции go

Код

var f;
function go(fi){fi("1"); setTimeout('f = alert',1000);}
go(alert);
f("2");

Автор: dstorm81 31.7.2015, 20:06
Цитата(mmotor @  31.7.2015,  01:48 Найти цитируемый пост)
 f, а я получаю строку.

ну может зло eval поможет...

а вообще действительно так сложно все нужно?
не проще ли передавать ТОЛЬКО параметры функции?

Автор: ksnk 31.7.2015, 21:17
Что вообще нужно-то? Какие функции предлагается передавать, кроме alert'а?

Автор: _zorn_ 31.7.2015, 21:52
яваскрипт вообще мутный язык. Дляя начала сам определись что тебе нужно, а там глядишь и другими путями разрулишь )

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)