- ベストアンサー
jQueryで、listの要素数を取得したい
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
>ちなみに、ここでやってること (1)listがObjectでない時は-1(nullとかが渡された場合に判定できるように)。 (2).lengthの型が数値の時は、配列とみなして、.lengthを返す。 (3)ここまで来た時は、たぶん連想配列(キーと値のペア)だろうから、キーを数えて返す。 >単純に、list.lengthだけでダメなのは、対象オブジェクトが、多次元みたいな構成になってたからでしょうか? 多次元というか、単にlistがObject型だからでは。なので、 > 内容的には、jQueryというよりは、javascriptの話になるのでしょうか? と思います。 くわしくは、ここらへんをご覧ください: http://www.ecmascript.org/docs.php
その他の回答 (1)
- osamuy
- ベストアンサー率42% (1231/2878)
適当な組み込み機能がなさそうなので、自力で数えてみては。 一例: function count_properties( list ){ if ( typeof list != 'object' ){ return -1; } if ( typeof list.length == 'number' ){ return list.length; } var n = 0; for ( var k in list ){ n++; } return n; }
補足
回答ありがとうございました。 おかげで望む結果を得ることができました。 ちなみに、ここでやってることと言うのは、下記のような意味で合ってますでしょうか? ・listの型がオブジェクトの場合はスキップ。 ・listの型が数字だったら、数を数える。 ・それを、listの要素数だけ、繰り返す。 単純に、list.lengthだけでダメなのは、対象オブジェクトが、多次元みたいな構成になってたからでしょうか? 内容的には、jQueryというよりは、javascriptの話になるのでしょうか? 何か参考になるようなサイト等、もしご存知でしたら、教えていただければ幸いです。
お礼
回答ありがとうございました。 大変参考になりました!