【发布时间】:2013-01-10 09:16:11
【问题描述】:
可能重复:
What is the difference between an array and an object?
The item exists in the array but it says that the array is 0 length?
我对 javascript 中的对象和关联数组有点困惑。我读了这个:question,但这个问题说两者没有太大区别。我在控制台中写了这个:
var a = [];
a["A"] = 1;
var b = {};
b["B"] = 2;
var c = new Object();
c["C"] = 3;
上面的输出如下:
a gives {A : 1}
b gives {B : 2}
c gives {C : 3}
以上三种情况都给出了相同的结果,因为它们都给出了一个对象。问题是如何在javascript中处理以上3种情况。
【问题讨论】:
-
我怀疑第一个是否给出
{A : 1}。在我的控制台中,它给出了一个空的[]数组(应该是这样)。 -
@VisioN :我在 IE 中检查它。在即它给了我上面的结果
-
不管控制台说什么,
a都会有一个A属性,因为数组也是对象。 -
数组只是特殊的对象。其处理方式与其他对象完全相同,但它们以特殊方式处理具有数字名称的属性。始终只使用带有数字键的数组,一切都会好起来的;)
-
@FelixKling 数字但不是负数:)
标签: javascript