在actionscript3中,我有一个函数变量,它被分配给100个函数之一。
在执行期间,我希望能够打印出它所分配的功能的名称。不幸的是,如果你说trace(f)其中f是函数变量,它只报告函数的参数类型和返回值类型,即使函数是静态的,也不提它的名字。有人知道获取函数变量的字符串表示的技巧吗?太糟糕了Adobe没有想到这个问题,调试时这是一个有用的东西。
答案 0 :(得分:1)
简短回答:你不能。对函数的引用在Actionscript中没有名称。
答案很长:可能如果你知道定义了该功能的类并且该功能是公共的。您可以迭代类的方法,直到找到与您的引用匹配的方法,然后您知道名称。请参阅此stackoverflow answer
答案 1 :(得分:0)
我最终创建了一个新的对象类型,即函数指针的包装,该对象类型具有一个包含函数名称的附加字段,因此我可以在运行时调试函数指针指向的内容。蛮力方法,但是有效。