[Flex] クラスのプロパティを列挙する
Flexのクラスに定義されているプロパティというかpublic変数を列挙する方法です。
オブジェクト内の変数値を全部出力するときなんかに使えるかも??
あまり利用する場面はありませんが、必要になった時のために覚書。
例えば、対象となるクラスがこんな感じの定義とする
package { public class Entity1 { public var id:int; public var key1:String; public var key2:String; public var message:String; public var flg:Boolean; } }
そして、列挙するプログラムはこんな感じ。ObjectUtilという便利なユーティリティクラスを使います。
import mx.utils.ObjectUtil; var targetClass:Class = Entity1; var propList:Array = ObjectUtil.getClassInfo(targetClass, null, {includeReadOnly:false}).properties; for each (var p:String in propList) { trace(p); }
実行すると、
flg id key1 key2 message
のように出力されます。ABC順になっている模様。
getClassInfoには他にも便利なオプションがあるかもしれません。
== ランキングに参加しています。ぜひクリックお願いします ==
なんとかしたい 「iCloudストレージの保存容量がもう少しで上限に達します」 [Java] システム(OS)の一時ディレクトリを取得する