JavaScriptのオブジェクト(連想配列)は、そのままでは要素数を取得する時にlengthプロパティを使うことができない。

オブジェクトの要素数を取得する際は、以下のようにする。

1
2
3
4
5
6
7
8
9
var person = {
    "name" : "yamada",
    "age": 30
};
 
var objLength = Object.keys(person).length;
 
console.log(objLength);
// 出力結果: 2

Object.keys()を使うことで、オブジェクトのキーを値として持つ配列に変換することができる。

あとは変換された配列のlengthプロパティを取得すればOK。