Может ли кто-нибудь объяснить это (странное) поведение? Почему длина в первом примере 3, а не 2, а самое главное, почему длина во втором примере 0? До тех пор, пока ключи являются численными, длина работает. Когда их нет, длина равна 0. Как я могу получить правильную длину из второго примера? Спасибо.
a = [];
a["1"] = {"string1":"string","string2":"string"};
a["2"] = {"string1":"string","string2":"string"};
alert(a.length); // returns 3
b = [];
b["key1"] = {"string1":"string","string2":"string"};
b["key2"] = {"string1":"string","string2":"string"};
alert(b.length); // returns 0