@sydhe said in Вызов функции из ресурса или переменной:
И что я должен там прочесть?
Как создавать ресурс при помощи действия выполнить код?
Мне не требуется ничего создавать, мне нужно всего лишь вызвать уже существующую функцию из переменной
_call_function([[FOR_TEST]],{})
но BAS отказывается выполнять код с подстановкой переменной выдавая ошибку:
TypeError: Result of expression 'f' [TEST] is not a function
при том что если точно также подставлять переменную при выводе лога - все прекрасно работает.
log([[FOR_TEST]])
Можно создать свою функцию с возможностью указывать имя вызываемой функции из переменной. Например вот так:
function _call_function_var(f, a, n) {
var c = new Cycle(function(i){
if(i>0)
{
_break(1, false);
return;
}
eval(f + "()");
},n);
c.SetLabel("function");
c.SetLabel("argument");
c._Arguments = a;
c.Start();
}
Тестовый скрипт
Правда работать такая функция будет только в режиме "запуска"

И какие баги могут всплыть при использовании подобной функции ни кто не знает.. :D
@UserTrue правильно сказал, @support крайне не рекомендует писать скрипт на методах BAS:
Писать такой код крайне не рекомендуется. Под "такой" я имею ввиду писать код целиком с использованием внутренних расширений БАС. Это приводило не раз и приведет в вашем случае к ошибкам, которые очень трудно выловить и исправить.