• ベストアンサー

JavaScriptオブジェクトのプロパティ数を求めるには?

for in を使ってカウントすれば求められますが、 例えば配列のlengthプロパティのようなものは無いのでしょうか。 prototype.jsを使っているので、そちらで拡張されているものでも構いません。

質問者が選んだベストアンサー

  • ベストアンサー
  • SAYKA
  • ベストアンサー率34% (944/2776)
回答No.3

気になって調べてみたけどlengthみたいな感じでポンと個数を得る事はどうもできないみたい。 自分で数を数えるやつを作るしか無いね。for inで。。。 あとはちょっと使いにくくなるけれど 「名前(0)と値(1)が組になった配列」の配列を使うくらいかなぁ・・・

mokpok
質問者

お礼

回答ありがとうございます。 やはり無理のようですね・・・ 諦めてfor in使うことにします。 ありがとうございました。

その他の回答 (2)

noname#78238
noname#78238
回答No.2

objectのlengthはnullを返しますので、以下のようにfor inを使って調べてみてはいかがでしょうか。 var test = { a : 0, b : 1 }; var test_length = 0; for (var i in test) { test_length++; } alert(test_length);

mokpok
質問者

お礼

回答ありがとうございます。 質問文にも書きましたが、この方法は既に使っています。 もしlengthのようなものがあればその方がコードも簡潔だな、と思い質問させて頂きました。

  • SAYKA
  • ベストアンサー率34% (944/2776)
回答No.1

lengthで求まるんじゃないの? 使い方が間違っててnullが返ってきてるだけなんじゃないのかな 因みにどんなオブジェクト?

mokpok
質問者

お礼

回答ありがとうございます。 確かにnullが返っているようです。 オブジェクトは下のようなものです。 var test = { a: 0, b: 1 };

関連するQ&A