2010-09-30 40 views
3

如何從對象中獲取所有方法的列表?我知道我可以得到對象類以這樣的方式如何在ActionScript 3中列出對象的所有方法?

var className:String = flash.utils.getQualifiedClassName(myObject); 
var objClass:Class = flash.utils.getDefinitionByName(className) as Class; 

它給了我一個類的原型,但並不能用它做什麼... 在JavaScript中,我可以過的原型迭代對象來獲得它的屬性和方法。
在ActionScript 3中可能嗎?您是否有任何針對ActionScript 3的元編程/反射的良好源?

謝謝!

回答

8

查看describeType功能。

+0

謝謝,但我需要一種方法來調用方法。這個decribeType只是將對象序列化爲XML。 – 2010-10-01 14:38:53

+2

@Eduardo。是的,但是如果你有對象並且你有方法的名字,你可以調用它。使用與JS相同的語法:'object [method](parameter);'。 – 2010-10-01 14:49:23

+0

XML部分有點醜,但它的工作原理。謝謝 – 2010-10-05 14:34:03

1

你有沒有嘗試過使用操作符(for ... in ...)一旦你有類的引用或對象實例?它應該工作。

+3

這隻適用於動態屬性。 – 2010-10-05 00:39:05

0

假設您使用FP 11+,這是一個更簡單的方法來列出AS3中的一個類的所有功能。

var req = new URLRequest(''); 
trace(JSON.stringify(req)) 

它也適用於數據對象。

相關問題