Flash:オブジェクト型変数の長さの取得
2011.09.07
配列と似たような使い方ができるオブジェクト型の変数ですが、
配列のように .length でデータ数を取得することはできません。

少し不便ですが、for~in文を使うことで取得することができます。


例えば以下のようなオブジェクトを用意して、
--------------------------------------------------------------------------

var userData_obj = {
  user_1 : {
    profile : "プロフィール1",
    comment : "コメント1"
  },
  user_2 : {
    profile : "プロフィール2",
    comment : "コメント2"
  },
  user_3 : {
    profile: "プロフィール3",
    comment : "コメント3"
  }
};
--------------------------------------------------------------------------


for~in文でカウントすることで、データ数を調べることができます。
--------------------------------------------------------------------------

objLen = 0;
for( var key:String in userData_obj ){
  objLen += 1;
}
trace( objLen );
--------------------------------------------------------------------------

上記の場合"3"と出力されます。

userData_obj.user_1 とすれば、
それぞれのデータ数も取得できます。



月別アーカイブ