有人能解释一下这种(奇怪的)行为吗?为什么第一个例子中的长度是3而不是2,最重要的是,为什么第二个例子中的长度是0?只要键是数字的,length就有效。如果不是,则长度为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
https://stackoverflow.com/questions/2528680
复制相似问题