在actionscript 3中引用getter / setter函数

时间:2009-09-25 18:36:10

标签: actionscript-3 reference setter getter

如何在actionscript 3中获取getter和setter函数的引用?

如果在呼叫上定义了方法,例如

public function blah():String { ...}

我只需说出blahthis.blah

即可获得对它的引用

如何获得对

的引用
public function get blah2():String {}
public function set blah2(b:String):void {}

谢谢!

1 个答案:

答案 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 ];
}