[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)の一時ディレクトリを取得する