如何在actionscript 3中获取getter和setter函数的引用?
如果在呼叫上定义了方法,例如
public function blah():String { ...}
我只需说出blah
或this.blah
如何获得对
的引用public function get blah2():String {}
public function set blah2(b:String):void {}
谢谢!
答案 0 :(得分:2)
原始回复:
不幸的是,您将无法将对这些引用存储为函数。 getter和setter方法实际上是围绕着你不应该这样做的想法而构建的,因此它们可以作为一个属性。
您是否需要专门参考这些功能?
我正在回复的评论:
我想基于自定义元数据标签动态添加外部接口方法,例如[外部]。我能够为常规方法执行此操作,但我也尝试将其扩展到getter / setter。为此,我需要动态获取对函数的引用,因此我可以使用apply函数使用正确的args执行它。
在这种情况下,我认为你最好使用多步骤方法。由于getter和setter作为属性而不是方法,因此测试它是否属性是有意义的,然后直接为其赋值。你能用这个吗:
if( foo.blah2 is Function )
{
foo.blah2.apply( foo, arr );
}
else
{
foo.blah2 = arr[ 0 ];
}