2008/11/21(金)length プロパティ

配列の要素数ではなく,インデックスの最大値+1を指す.
そのため,

var a = new Array();
a[0] = 0; // length -> 1
a[1] = 1; // length -> 2
a[100] = 100; // length -> 101
a[2] = 2; // length -> 101

になる...

要素数を知りたい場合カウントするしかないの?

var count = 0;
for(var i in ary){ count++; }