Archive for 2009/6/8
オブジェクトのパラメータの一覧を取得したいが、そのためのメソッドがない!!あれ!?といつも思ってしまう。
var obj:Object = new Object();
obj.param1 = “foo1″;
のようにActionScriptではオブジェクトのパラメータが動的に作成できる。(ちょっと、Javaなどに慣れていると気持ちが悪い。文法がJavaに近いし、Eclipse(Flex Builder)でプログラミングしていると、脳がその考え方になってしまう。)
で、後で定義したプロパティ名一覧を取得したいなーと思って、Objectのリファレンスを見ると、指定したプロパティがあるか?ないか?はあるが、プロパティ名一覧を取得するメソッドがない。
なぜだ・・・とちょっと思ってしまう。が、for .. inでプロパティ名をとれるのを忘れてしまっている。
また、for .. in とならんで、 for each.. in もあるので、ちょっと整理。
[AS]
var obj:Object = new Object();
obj["@param1"] = “foo1″;
obj.param2 = “foo2″;
for(var str:String in obj){
trace(str);
}
[/AS]
“@param1″と”param2″が出力される。
[AS]
var obj:Object = new Object();
obj["@param1"] = “foo1″;
obj.param2 = “foo2″;
for each(var item:Object in obj){
trace(item);
}
[/AS]
“foo1″と”foo2″が表示される。
とあたまではわかっているのですが、なかなか体が覚えてくれません。


