Переменная содержит название функции, как её вызвать?
-
Подскажите, пожалуйста, название функции содержится в переменной. [[fun_name]]
Как вызвать такую функцию ?
Функция сделана средствами бас.
-
@kuzkuz Нормально никак
-
@UserTrue вот печаль. Спасибо
на пхп прогал, привычка... работать старыми методами.
-
@UserTrue А ненормально можно? У меня тоже требуется такое проделать.
-
@smeckoi77 Я не хочу в это вдаваться, можно проявить смекалку и накастылить
-
@UserTrue Подскажите, пожалуйста, а к метке реально перейти, если метка задана в переменной?
-
@kuzkuz не пробовал ) Я не советую костылить, а то потом будите ловить странные баги и думать, что бас виноват.
-
@kuzkuz вызов функции выглядит так:
_call_function(func,{})!
Где func - не строка, а сама функция. Поэтому строкой вы не можете просто так передать название функции и её вызывать. Можно сделать через switch/if-else логику, например такую:
Если [[FUNC_NAME]] == "test1" выполнить _call_function(test1,{})!
Если [[FUNC_NAME]] == "test2" выполнить _call_function(test2,{})!Да, и тут нужно помнить, что если у вас есть аргументы для функции и нужно получать результат - это тоже нужно учитывать, но тут уж сами.
-
@Oyasumi-Punpun Спасибо, но через большое кол-во if можно и по другому сделать. Искал более гибкий вариант.
-
@Oyasumi-Punpun said in Переменная содержит название функции, как её вызвать?:
Да, и тут нужно помнить, что если у вас есть аргументы для функции и нужно получать результат - это тоже нужно учитывать, но тут уж сами.
Там есть еще подводные камни из-за которых в редакторе не будет работать, поэтому я не захотел это разъяснять, да и сам асинхрон БАС для большинства становится магией ))
-
Есть список
[[SPISOK1]] = ["scroll","up","down"]
Соответствуют названиям функций.
Выдергивая поочереди из списка нужно выполнить функции.
Я верно понял - не реально без проблемных костылей?
-
@kuzkuz Ага
-
@UserTrue Можно бы добавить тему в Запрос функционала!
-
@UserTrue Эххх, хотел избежать портянку кода.
-
@smeckoi77 Разработчик как-то сказал, что он не рекомендует использовать API и БАС будет и дальше развиваться в сторону визуального программирования